c++中string的使用~为什么我用不了string

比如,我需要定义一个string型的字符串变量a,为什么我定义的:stringa不行?运行调试报错,说未声明的标识符“string”是缺少什么头文件吗?请高手支招... 比如,我需要定义一个string型的字符串变量a,为什么我定义的:
string a不行?
运行调试报错,说未声明的标识符“string”

是缺少什么头文件吗?请高手支招
展开
 我来答
dukuntai
2011-02-18 · TA获得超过263个赞
知道小有建树答主
回答量:97
采纳率:0%
帮助的人:106万
展开全部
#include <string>
标准C++定义了这个文件。
里面有一个size()函数,可以返回字符串的长度。用法:
string a;
a="HELLO";
cout<<a.size()<<endl;
其实还有一些替代的方法,例如用字符数组了。C或者C++也提供了对他的读取操作。但是,和其他语言不太相同的是,读取字符数组时,见到空格就停止读取。
例如:(C++)
char c[100];
cin>>c;
cout<<c<<endl;
(C)
char c[100];
scanf("%s",c);//由于c本身就是指针(数组名就是指向数组首元素的指针),所以不用&操作符取地址。
printf("%s\n",c);
可以这么直接的读入。但是,当输入
asdghaworgh aworgh时,却只能输出asdghaworgh而不能输出asdghaworgh aworgh。想要改变这个现状,可以运用getline函数。
用法:
char c[100];
cin.getline(c,sizeof(c),'\n');
也可以使用getchar进行读取。用法:
char c[100],temp;
long clen=-1;

for(;;)
{
temp=getchar();
if( temp == '\n' )
break;
clen++;
c[clen]=temp;
};

cout<<c<<endl;就可以了。
尘雨洛烟
2016-01-09 · TA获得超过6203个赞
知道大有可为答主
回答量:3967
采纳率:79%
帮助的人:1013万
展开全部
看看你包含了相应的头文件没有,在文件开始包含如下头文件试试
#include <string>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
古春微cF
2019-09-14 · TA获得超过2.9万个赞
知道大有可为答主
回答量:1.1万
采纳率:32%
帮助的人:892万
展开全部
#include
#include
using
namespace
std;
int
main()
{
char
c;
//定义一个字符变量c
string
cc;//定义一个字符串变量cc
//...
return
0;
}
中有string型的定义。但要用到名字空间std:using
namespace
std;
若要用c语言中的字符串处理函数,如:strcat、strlen、strncmp等,只要再加一个#include
就行了.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dongyue2008
推荐于2017-11-24 · TA获得超过3604个赞
知道大有可为答主
回答量:1300
采纳率:100%
帮助的人:598万
展开全部
#include <string>
using namespace std;
注意不要 #include <cstring>, 否则不能 cin 和 cout 一个 string。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友b8b3f90
2011-02-17 · TA获得超过1.5万个赞
知道大有可为答主
回答量:7179
采纳率:94%
帮助的人:3050万
展开全部
#include <string>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式