请解释为什么程序输出为 0在 c 中编程

问题描述

代码: #include

int main()
{
    int x;

    printf("%d\n",x);
    if(x>10)
      x-=10;
    else if(x>=0)
      x+=00;
    else if(x)
      x+=10;
    else
      x-=10;
      printf("%d\n",x);
    return 0;
}

为什么 x 的初始值为零? c中int、float、double、char类型数据的认值是多少?在这个程序中 x 被赋值为认值或垃圾值。

解决方法

C 中没有默认值。如果变量未初始化,它将具有随机值。在您的情况下,它似乎是 0,但它可以是任何东西。