C++字符串结尾是否有'\0'也就是string类的结尾是什么?

 我来答
千叶育儿
2010-09-12 · 育儿、诗词分享,每天进步一点点!
千叶育儿
采纳数:1524 获赞数:5379

向TA提问 私信TA
展开全部
C++的每个字符串除存储给定的字符序列外都有一个结束符'\0'(即ASCII码为0的空字符).
如字符常量'm'与字符串常量"m",在内存中的存储为:
m
m0
科举网7号助教
2010-09-12 · TA获得超过349个赞
知道答主
回答量:129
采纳率:0%
帮助的人:194万
展开全部
是的。

比如说
char c[]="Hello";
等价于
char c[]={'H','e','l','l','o','\0'};
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
今夜无醉眠
2010-09-15 · TA获得超过4945个赞
知道大有可为答主
回答量:1434
采纳率:0%
帮助的人:2076万
展开全部
s[i].ID == f[1].d
你这样是比较这两个字符串的地址是否相同
c风格字符串,也就是0结尾字符串的比较要借助strcmp
如果strcmp( s[i].ID, f[1].d ) == 0则说明他们两个相等
你那样做是不行的
另外可以使用标准库的string
#include string
std::string a = "123";
std::string b = "123";
if ( a == b ) {...} // 这里就可以直接用==来比较了,因为string重载了==,以比较两个字符串的内容是否相同
使用strcmp需要包含头文件cstring或者string.h
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
龙天骑士
2010-09-12 · TA获得超过2534个赞
知道小有建树答主
回答量:554
采纳率:0%
帮助的人:444万
展开全部
'\0 '是字符串结束的标志
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zcqing83
2010-09-12 · TA获得超过218个赞
知道小有建树答主
回答量:401
采纳率:0%
帮助的人:274万
展开全部
string类的字符串的结尾是\0,
string是类,类哪有什么结尾呢?
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式