gpt4 book ai didi

c - C 中的自动变量未初始化,但在循环内给出固定值

转载 作者:行者123 更新时间:2023-11-30 20:47:31 25 4
gpt4 key购买 nike

我读到,C 中的自动变量如果未初始化为值,则包含垃圾值。然而,我发现了一些与我的理解不符的地方。考虑下面的代码。

#include <stdio.h>

main()
{
int i = 0;

for (i = 0 ; i< 10; i++)
{
int x;
int a = 500;
printf("%d\t%d\n", a, x);

}
}

输出:

500     2
500 2
500 2
500 2
500 2
500 2
500 2
500 2
500 2
500 2

我的问题是 - 我不应该期待垃圾值而不是 2 秒吗?我在 Windows 机器上的 Dev-C++ 上运行了该程序。

最佳答案

Uninitialized 表示已声明但在使用前未设置为明确的已知值。

它会有一些值(value),但不是可预测的。在您的情况下,它是2。在其他系统上,它可能是其他任何东西。

关于c - C 中的自动变量未初始化,但在循环内给出固定值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18158791/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com