一个个字符输入字符数组后,系统不会在后面自动加\0,而strlen函数的结束条件是遇到\0自动结束,所以strlen不正确,我按照你的代码试了一下但是输出结果和你的不同输出结果如下:hello world!€ 15Press any key to continue,可能答得不好请多多见谅 。
程序有问题。没有 \0 结束很危险。 你这是Debug还是Release?如果碰巧数组后面没有0填充,就有意外了。 正确的: const char * c = "hello world"; char c[] = {'a','b','c',0};
puts打印字符串,遇到‘\0’会停止,因为你的char c[]没有'\0',所有它打印出hello,world之后会打印随机值。 strlen也是遇到‘\0’停止,char c[]没有'\0'所有打印出来的也是随机值
70,037
社区成员
243,243
社区内容
加载中
试试用AI创作助手写篇文章吧