【发布时间】:2013-07-15 06:02:29
【问题描述】:
据我所知,局部变量是未初始化的,即它包含垃圾值。 但是下面的程序给出 0(零)作为输出。
main()
{
int i;
printf("%d\n",i);
}
当我在上面运行程序时,它总是给出 0。 我知道 0 也可以是垃圾值,但每次我得到零作为输出。 任何人都可以知道它的原因吗?
【问题讨论】:
-
源文件的扩展名是什么?
-
尽量避免未初始化的变量。没必要这样做
-
这基本上是偶然的......并且误导了人们。不要依赖它;在其他机器类型上,它不一定是零。
-
@Jonathan:这家伙知道它是未定义的,不可靠的,你有什么......他在问为什么他总是得到零,或者看起来如此。
标签: c linux local-variables