- 已关闭**。此问题需要超过focused。当前不接受答案。
- 想要改进此问题吗?**更新此问题,使其仅关注editing this post的一个问题。
1小时前关闭。
Improve this question
我正在看下面的C代码:
#include <stdio.h>
#include <stdlib.h>
void main(){
int a;
printf("%d", a);
}
我想知道为什么这段代码打印了一个看似随机的数字。我的第一个猜测是这是一个未定义的行为,但我可能是错的。
3条答案
按热度按时间gwbalxhn1#
因为你没有给a赋值,所以每次运行代码时,它都是垃圾值.
mepcadol2#
因为整数“a”是未定义的,它给出的垃圾值本质上是随机的。(在某些情况下,如果没有给定值,这个程序可能会崩溃)。
t9aqgxwy3#
是的,这是未定义的行为。
此问题似乎与Reading uninitialized variable重复