这个问题很是重要,实际上前面讲那么多,其中一个很重要的目的就是为了讲这个知识点。所谓初始化就是“第一次赋值”的意思,我们先来看一下程序
# include<stdio.h>
int main(void){
int i;
printf("i = %d\n", i);
return 0;
}
这里的 i 没有被赋值,只是定义了一个存储空间。这个时候输出这个空间的程序,你觉得会是多少呢?是一个任意值?可以通过编译,链接,执行看一下
现在,我们来看看警告的内容,“warning C4700: local variable i used without having been initialized”.
C4700是一个地址,local 是本地,就是局部的意思,也就是说“局部变量使用了,但是没有初始化”,
输出了“ i = -858993460”
如果i 的值是任意的,那么单击一次执行,显示应该是另一个值,但是事实上不管执行多少次,该值不会改变。
int i 运行结果是将变量与内存中某一个单元产生关联