c语言中字符串数组的长度,什么时候将'\0'算上,什么时候不用算上啊?

如题所述

一般意义上字符串数组的长度是不包括'\0'的。如char a[]=“China”;这个长度就等于5。其实在系统中a占了6个位置,最后一个放了一个'\0'。

但是你如果你写char a[]={'C','h','i','n','a'};这个长度也是5,但系统不会在最后放'\0',所以它在系统中只占5个位置。应该说,这个a只能叫“字符数组”,不能叫“字符串数组”。追问

那定义数组a的时候,中括号里面是填写5,还是6啊

追答

如果是定义字符串数组,要多加一个,如:
char a[6]=“China”;
如果是定义字符数组,可不多加,如:
char a[5]={'c','h','i','n','a'};

但一般都只用一个空的中括号,让系统自行去处理,呵呵😜

温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网