c - c中声明但未初始化的int变量的值

标签 c int

<分区>

我是 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 相同)。

最佳答案

C 对于对象的初始值一直非常明确。如果是全局的或静态的,它们将被归零。如果是自动,则该值为不确定

关于c - c中声明但未初始化的int变量的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57639924/

相关文章:

java - 打印多维数组时出现问题

c - 如何将 char 赋值给 int 值?

c - 如何修复循环?

c++ - 单步执行直到退出没有行号信息的函数 __svfscanf_l

c - 从类型 'bignum' 分配给类型 'int' 时的类型不兼容

swift - 在 SpriteKit 中创建随机数

c - 如何用C语言解决C2054问题

c - 尝试创建简单的 C 程序来编辑文本文件中的 1 行

c - 一次读取一个文件一个字符

mysql - 使用 BIT 作为 INT 以提高存储容量效率