在C语言中,变量的多次初始化不会引发错误。为什么?

Nag*_*ath -4 c initialization

在下面的代码中,变量被多次初始化。

为什么此代码不引发错误?

int main() 
{ 
  int x;
  x=5;
  x=10;
  printf("\nx=%d",x) ;
}
Run Code Online (Sandbox Code Playgroud)

节目输出

x = 10

Som*_*ude 7

你没有做任何初始化可言

初始化将是

int x = 0;
Run Code Online (Sandbox Code Playgroud)

在定义中初始化变量的位置。

与例如

x = 5;
Run Code Online (Sandbox Code Playgroud)

您只需为变量分配一个新值x

非常数变量不是不可变的。您可以根据需要将值分配给变量多次。