c语言中对于一维数组长度为5位,但初始付值只有1,2,那其余的位数由什麽来补?

来源:百度知道 编辑:UC知道 时间:2024/09/22 07:17:49
对于2维数组中字符的付值,有5个字符长度,但初始付值只有2位,那其他的位由啥补?谢谢

int a[5]={1,2} 只给前两个赋值 后面的就默认为空(0)
如果输出的话 printf("%d\n",a[0]);printf("%d\n",a[1]);printf("%d\n",a[2]);printf("%d\n",a[3]);printf("%d\n",a[4]);
结果就是1 2 0 0 0

题目中为一维,下面为什么是2维数组呢?
C语言中,默认初值为0;如果赋值长度小于数组长度,则把所赋的值赋予数组的前部分。

不能说是其余的位,前两个数组元素的值为1,2.其余元素默认为0.

数组进行部分初始化,剩余元素都为0
字符数组部分初始化,剩余元素都为\0