| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1502 人关注过本帖
标题:string问题
只看楼主 加入收藏
幽灵嫖客
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2007-1-15
收藏
 问题点数:0 回复次数:13 
string问题
程序源码:
#include <iostream>
#include <cstring>
using namespace std;

int main()
{
    string strinfo="please input a string:\n";
    cout<<strinfo;
    cin>>strinfo;
    cout<<strinfo;
    return 0;
}

运行时报错了:
d:\vc++ 6.0\msdev98\myprojects\ycp\a.cpp(8) : error C2679: binary '<<' : no operator defined which takes a right-hand operand of type 'class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >' (or there is no acceptabl
e conversion)
不知道为什么?
搜索更多相关主题的帖子: string 
2008-04-13 18:13
flylee
Rank: 5Rank: 5
等 级:职业侠客
帖 子:309
专家分:374
注 册:2004-8-10
收藏
得分:0 
编译器没设置对
至于怎么设置我也不知道,我不用VC的
2008-04-13 18:29
幽灵嫖客
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2007-1-15
收藏
得分:0 
可能是编译器装的时候就有问题,不可能没有重载string的》和《

C primer plus
2008-04-13 18:33
hitxinyu
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2008-4-11
收藏
得分:0 
不是#include <cstring>是#include <string>
2008-04-13 18:49
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
#include <iostream>
#include <string>
using  namespace std;
int main()
{
    string s="please input a string:\n";
    cout<<s;
    fflush(stdin);
    cin>>s;
    cout<<s;
    return 0;
}

学习需要安静。。海盗要重新来过。。
2008-04-13 18:54
幽灵嫖客
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2007-1-15
收藏
得分:0 
不是说C++的头文件在C前加个'c'吗?
能解释一下吗?

C primer plus
2008-04-13 18:56
hitxinyu
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2008-4-11
收藏
得分:0 
#include <cstring>
是微软的
string是std C++标准库
string 在 #include <string>里。
2008-04-13 23:12
随心
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:12
帖 子:2577
专家分:250
注 册:2007-8-12
收藏
得分:0 
cstring和string.h其实里面都是C标准库提供的东西,甚至某些实现中cstring的内容就是   
  namespace   std   
  {   
  #include   <string.h>   
  }   
   
  但是cstring是C++的组成部分,而不是C的组成部分   
  string.h是C的组成部分,而不是C++的组成部分   
   
  所以如果你用的是C++,那么请用cstring,如果你用的是C请用string.h   
  至于string,那么个是C++定义的std::string所使用的文件,和这两个文件没有任何关系,也不存在新旧的问题

天之道,利而不害。圣人之道,为而不争。信言不美,美言不信。善者不辩,辩者不善。知者不博,博者不知。
2008-04-14 13:17
幽灵嫖客
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2007-1-15
收藏
得分:0 
但我用的是Visual C++ 6.0 如果包含cstring头文件
用cin读入一个string或用cout输出一个stirng时
就会报错误。

C primer plus
2008-04-14 16:53
hitxinyu
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2008-4-11
收藏
得分:0 
[bo]以下是引用 [un]随心[/un] 在 2008-4-14 13:17 的发言:[/bo]

cstring和string.h其实里面都是C标准库提供的东西,甚至某些实现中cstring的内容就是   
  namespace   std   
  {   
  #include      
  }   
   
  但是cstring是C++的组成部分,而不是C的组成部分   
  string.h是C ...

受教了。没仔细看。以为是CString
http://www.
说的更详细些。
/******************************/
C、传统 C++
#include <assert.h> //设定插入点
#include <ctype.h> //字符处理
#include <errno.h> //定义错误码
#include <float.h> //浮点数处理
#include <fstream.h> //文件输入/输出
#include <iomanip.h> //参数化输入/输出
#include <iostream.h> //数据流输入/输出
#include <limits.h> //定义各种数据类型最值常量
#include <locale.h> //定义本地化函数
#include <math.h> //定义数学函数
#include <stdio.h> //定义输入/输出函数
#include <stdlib.h> //定义杂项函数及内存分配函数
#include <string.h> //字符串处理
#include <strstrea.h> //基于数组的输入/输出
#include <time.h> //定义关于时间的函数
#include <wchar.h> //宽字符处理及输入/输出
#include <wctype.h> //宽字符分类

/******************************/

标准 C++ (同上的不再注释)
#include <algorithm> //STL 通用算法
#include <bitset> //STL 位集容器
#include <cctype>
#include <cerrno>
#include <clocale>
#include <cmath>
#include <complex> //复数类
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>
#include <deque> //STL 双端队列容器
#include <exception> //异常处理类
#include <fstream>
#include <functional> //STL 定义运算函数(代替运算符)
#include <limits>
#include <list> //STL 线性列表容器
#include <map> //STL 映射容器
#include <iomanip>
#include <ios> //基本输入/输出支持
#include <iosfwd> //输入/输出系统使用的前置声明
#include <iostream>
#include <istream> //基本输入流
#include <ostream> //基本输出流
#include <queue> //STL 队列容器
#include <set> //STL 集合容器
#include <sstream> //基于字符串的流
#include <stack> //STL 堆栈容器
#include <stdexcept> //标准异常类
#include <streambuf> //底层输入/输出支持
#include <string> //字符串类
#include <utility> //STL 通用模板类
#include <vector> //STL 动态数组容器
#include <cwchar>
#include <cwctype>
using namespace std;

/******************************/
C99 增加

#include <complex.h> //复数处理
#include <fenv.h> //浮点环境
#include <inttypes.h> //整数格式转换
#include <stdbool.h> //布尔环境
#include <stdint.h> //整型环境
#include <tgmath.h> //通用类型数学宏
/******************************/

[[it] 本帖最后由 hitxinyu 于 2008-4-14 21:58 编辑 [/it]]
2008-04-14 21:54
快速回复:string问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.073509 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved