C语言中未初始化的变量的值是0么

如题所述

C语言中,全局变量和局部静态变量是存储在静态存储区的,他们在分配的时候都被系统默认初始化为0;而局部自动变量是在栈上分配内存的,如果不对它们进行初始化,那么他们可能是任意的随机值。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-11-25
普通的变量定义时未赋初值,那么系统赋予它一个随机垃圾值。如果static
int
a;即静态变量未赋初值,系统认为是0.
第2个回答  2019-11-24
1.在效果来说没有很大区别,最终的结果都把一个数据(data)送入了变量
2.使用的时候需要注意的点:
a.对于全局变量,定义时若未初始化,那么大部分情况下(某些编译器可能没有)会赋予0
b.对于局部变量,定义时若未初始化,那么大部分情况下,其值可以被当做是随机的.
许多情况下的错误正是由于局部变量未初始化造成的
第3个回答  2020-01-20
这要看你定义的变量的属性
全局变量
静态变量初始值为0
局部变量,自动变量初始值随机分配
第4个回答  2019-11-25
随机数
if(
该变量为静态存储方式)
初始化值为0
else
未知量
相似回答