有人可以向我解释为什么控制台输出 0 吗?

Can someone explain to me why the console outputs 0?

本文关键字:输出 控制台 为什么 可以向 解释      更新时间:2023-10-16

这是我在期中编程入门时提出的一个问题,我不明白为什么答案不是2。

int x = 0;
int y = 10;
if( x != y )
{
int x = 2;
}
else
{
x++;
}
cout << x;

发生这种情况是因为您在if语句中隐藏(创建新变量(x。 如果在ifx之前删除int,则打印时x将为 2。

您在两个不同的区域中两次声明了变量 x。删除循环中 x 之前的 int,你应该很高兴。你可以做 x = x+2 或 x+=2 来向变量加两个。