c++ cout函数输出字符串时候 是以遇到‘\0’结束 假如有一个字符串 char arr[5]

c++cout函数输出字符串时候是以遇到‘\0’结束假如有一个字符串chararr[5]c++cout函数输出字符串时候是以遇到‘\0’结束假如有一个字符串chararr... c++ cout函数输出字符串时候 是以遇到‘\0’结束 假如有一个字符串 char arr[5]c++ cout函数输出字符串时候 是以遇到‘\0’结束 假如有一个字符串 char arr[5]=“happy” 这个字符串已经没有空间存放‘\0’了,那请问是以什么作为字符串结束的标志呢? 展开
 我来答
GTA小鸡
高粉答主

2018-03-17 · 醉心答题,欢迎关注
知道大有可为答主
回答量:2.6万
采纳率:78%
帮助的人:1.4亿
展开全部
这种代码导致数组越界,\0写到了数组arr后面的一个字节处,程序可能因此崩溃。务必写成char arr[]="happy"或char arr[6]="happy"。
更多追问追答
追问
书上说 char str[5] ={‘h’,’a’,’p’,’p’,’y’};这种写法是合法的那又为什么呢?
追答
这是逐个字符初始化赋值,没有'\0'标记。这个数组不能直接用cout输出。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式