【发布时间】:2019-08-24 16:57:58
【问题描述】:
我是 C 的新手,使用 DevC++ 作为我的 IDE。
我了解到,如果变量已声明但未分配任何值,它们将使用随机值初始化(静态和全局变量除外,它们初始化为 0)。
但是当我尝试这个时:
int i, j, k;
printf("%d %d %d", i, j, k);
打印出来了:
i 总是 0; j 的任何大随机整数(总是不同的); k 的大随机整数(总是相同)。
这是运行上述代码 5 次的输出:0 13308816 32764 0 12391312 32764 0 11408272 32764 0 11015056 32764 0 7541648 32764
但我认为这些都应该打印随机值(垃圾值),每次都不同(与 j 相同)。
【问题讨论】:
-
I learned that if variables are declared but not assigned any value they are initialized with a random valu错了!!事实上,它们根本没有初始化为任何值。特定内存之前的任何值都将保持原样。 -
有点跑题了,2019年应该没人用DevC++了。