读书人

这是咋回事

发布时间: 2012-05-16 23:40:10 作者: rapoo

这是怎么回事?
# include <stdio.h>

int main(void)
{
int a[4][3];
for(int i=0; i<4; i++)
{
printf("%d\n", a[i][0]);
}
printf("\n");

return 0;
}
为什么输出会是
-858993460
-858993460
-858993460
-858993460
不理解?

[解决办法]
二维数组得不到初始化

C/C++ code
for(int i=0; i<4; i++){     a[i][0] = 0;}
[解决办法]
局部变量没初始化系统自动赋随机值
[解决办法]
申请的变量没有初始化成给定的值,程序将其每个字节初始化成了 0xCC(不同的编译器可能不同),对整形来说就是 0xCCCCCCCC,用十进制来显示就是-858993460

[解决办法]
没有初始化
[解决办法]
变量没有初始化,一般编译器不会给你设置初始值。

读书人网 >C语言

热点推荐