C语言局部变量初始值是否是0

img


我已经试了好几遍了“r”都是0
谁能告诉我这个这个“r”不应该是上一个地址所储存的值吗?

变量要初始化,没有初始化值是不确定的。

int r=0;

img

C语言局部变量没赋值时初始值是不确定的,只不过是0的 几率很大.
而且同一个程序多次运行时局部变量初始值一般是固定的,只有改了程序才有可能变化

NULL默认值是0吧,变量都是要提前赋值的,不然没有意义

不是零,是一个随机数。只不过零的概率更大

局部变量是进入函数后在栈上分配自动分配内存的,如果没有指定初始值,那么栈里面是什么值,局部变量就是那个值。所以局部变量一定要在使用前进行初始化。

c语言变量初始值是未定的