一道C++题目,求详解

2025-03-31 18:19:44
推荐回答(6个)
回答1:

cout 输出字符串以\0为结尾,
你的s[3]='\0' 后,s[]='abc\0ef';
以\0结尾输出abc

回答2:

s[3] 就是d字符,s[3]='\0'此步操作后,char s[] 就变成了 "abc\0"了,而字符串或者字符数组遇到\0表示结尾了,所以就是abc了

回答3:

s 是char类型呀,s[3]='\0'的意思就是只能读取到s[2]呀,char是以'\0'结尾的。s[0]=a,s[1]=b,s[2]=c,后面没有了,所以输出结果是abc

回答4:

s[3]='\0'; 把字符串S[]里面的第四个位置初始化了,系统在读取的时候,默认的将后面的省略了。 初始化后就相当于结束了。

回答5:

s[3]=0以后,s的值是"abc\0ef"
cout输出时,遇见\0就停止了

回答6:

你定义的数组长度只有3,所以只输出前3个字母,如果把s[3]变成s[6].试试