c语言中 例如a[5]={1,2,3,4,5} 那么它数组的长度是多少?

c语言中
例如a[5]={1,2,3,4,5}
那么它数组的长度是多少?什么时候需要加上空字符作为结尾啊?😔😔😔

你定义数组维度多大,数组元素最大个数就有多大。
比如:int a[5];元素多5个,也就是最大存放5个数字。
但如果是字符数组 char a[5] 虽然也可以存放5 个字符,但是通常只存放4个,最后1个字符放的就是结束符号‘\0’
你问为什么需要结束符号。因为与字符数组相关函数判断字符串长度都是通过这个结束符号判断的。
比如:这样一个字符串“abcde\0” 你使用函数strlen获取其长度时候,得到的就是首元素到第一个'\0'前一个元素的总个数,也就是5.
但如果字符串是“ab\0cde\0”,那么得到的长度就是2 ,因为函数判断截止到第一个'\0'。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-08-25
数组的总长度=每一个元素的长度×元素个数
元素的长度取决于数据类型,一般char型长度为1,int型为4(有的系统为2)。
好像没有在最后加空字符作为结尾的。
只有字符型的数组才在最后加一个asc码为0的字符(注意它是不可见的)作为数组结尾的标志。本回答被提问者和网友采纳
第2个回答  2018-02-12
长度是5.不太明白加空字符是什么意思。
a[5]={1,2,3,4,5}
这句话的意思就是这个长度为5的数组,a[0]的内容是1(这个数组的第一个是1),a【2】是2.。。。a[5]==5