main() {int a[10]={1,2,3,4,5}; printf("%d\n",a[6]);}输出的结果是啥,为啥????

如题所述

运行结果为0

LZ可以在编程软件中,如visual C++,中可得到该结果。
因为a[10]是一个数组,从0开始赋值,第0个数,即a[0]为1,第1个数a[1]为2,依次类推,a[4]=5,
而a[5]之后到a[9]没有给它赋值,它只好为0,可以理解为1楼所说的初始化,也可理解为相当于为假。

不过,要注意,若说要输出a[10],已经超出这个数组的大小,或者理解为越界,运行结果是一个莫名其妙的数。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-12-03
int数组在初始化赋值时候是没有赋值就补0,顺便说下char型的话是补'\0'
第2个回答  2010-12-03
是0
在初始化时,没有初始化的数据值为0
大家正在搜