首页 > 解决方案 > 为什么标识符在C中具有不同的值?

问题描述

我是 C 新手,这是我的代码。也许这对其他人来说太容易了。

#include <stdio.h>
int main()
//Assign value to identifiers
{
    int a,b,c,d=6;
    printf("a:%d\n",a);
    printf("b:%d\n",b);
    printf("c:%d\n",c);
    printf("d:%d",d);
    return 0;
}

为什么a=16,b=0,c=12522400?

a:16
b:0
c:12522400
d:6

标签: c

解决方案


因为那些变量没有被初始化。您总是必须初始化一个本地的自动变量以避免未定义的行为。

有关更多详细信息,请参见此处: https ://en.wikipedia.org/wiki/Uninitialized_variable


推荐阅读