int a[3][4]={0}这个则数组所有的元素都得到了初值0,这句话对吗,为什么,如果0改成1那么a[0][0]=1
作者&投稿:董奋 (若有异议请与网页底部的电邮联系)
在C语言LINUX编译器情况下,
如果是全局变量或静态变量的话,在编译期会得到初值0
但是如果是局部变量的话,就不行呵,这时得到不确实的值
看编译器的,
一般绝大多数编译器,int a[][4]={0,0};这么写了以后,数组里每个元素都能得到初值0
但是也有极少的编译器这么写,只有a[0][0]和a[0][1]得到了初值0
可以编个程序自己试验一下。这很容易实现的,怀疑的时候也要敢于自己实践。
其他全为0.
初始化时没有指定的默认为0
第一个为1,其他为0