为什么打印机打印随机数?
Why prinf prints random number?
这是我的代码。为什么 C 会打印一个随机数,如 3321856?
我知道这是因为它是一个空变量,但为什么是这个数字?是随机的还是有某种原因?
#include <stdio.h>
void main()
{
int a;
printf("%d", a);
}
对于初学者,根据 C 标准,不带参数的函数 main 应声明如下。
int main( void )
其次,变量a
未初始化且具有不确定的值,因此程序调用未定义的行为。
您需要在输出该值之前用该值初始化变量a
,否则输出将是未定义的。
变量 a
在函数 main 的外部块范围内定义,没有存储 class 说明符 static
。所以它有自动存储期限。此类变量未隐式初始化。
这是我的代码。为什么 C 会打印一个随机数,如 3321856? 我知道这是因为它是一个空变量,但为什么是这个数字?是随机的还是有某种原因?
#include <stdio.h>
void main()
{
int a;
printf("%d", a);
}
对于初学者,根据 C 标准,不带参数的函数 main 应声明如下。
int main( void )
其次,变量a
未初始化且具有不确定的值,因此程序调用未定义的行为。
您需要在输出该值之前用该值初始化变量a
,否则输出将是未定义的。
变量 a
在函数 main 的外部块范围内定义,没有存储 class 说明符 static
。所以它有自动存储期限。此类变量未隐式初始化。