C++ 为什么while循环从未执行过?

C++ 为什么while循环从未执行过?,c++,while-loop,flags,C++,While Loop,Flags,我正在开发一个简单的程序来测试带有标志的while循环 但是我不确定为什么我的程序由于某些原因甚至没有进入while循环,如果我犯了一些简单的错误,请原谅 主要 对。如果xflag==1,则执行while循环的主体。但事实并非如此 由于您将x=1设置为退出循环,因此可能需要将条件xflag==1更改为xflag==0(或simpy!xflag)。xflag的值为0。因此,条件xflag==1返回false。这就是控件没有进入while循环的原因。您可能是指while(xflag==0)不,他可能

我正在开发一个简单的程序来测试带有标志的while循环

但是我不确定为什么我的程序由于某些原因甚至没有进入while循环,如果我犯了一些简单的错误,请原谅

主要


对。如果
xflag==1
,则执行
while
循环的主体。但事实并非如此


由于您将
x=1
设置为退出循环,因此可能需要将条件
xflag==1
更改为
xflag==0
(或simpy
!xflag
)。

xflag
的值为
0
。因此,条件
xflag==1
返回
false
。这就是控件没有进入while循环的原因。

您可能是指
while(xflag==0)
不,他可能是指
xflag==1
。您可以看到,他在循环中执行
xflag==0
来打破它。@EitanT-不,他显然想在
xflag==0
时循环,当n达到10时将其更改为1。无论如何,这是我的理解xflag==0是正确的,他实际上改变了xflag=1以打破循环,或者至少尝试打破循环,但事实并非如此。+1:@weaselox实际上你是对的。我看错了。投票表决。
int main()
{
  int xflag=0;
  int n=0;

while ( xflag==1 )
{
    if (n == 10)
    {

        cout<<"exiting loop"<<endl;
        xflag = 1;
    }

    else
    {
        cout << n << endl;
        ++n;
        xflag = 0;
    }

}

cout<<"hey"<<endl;

return 0;
} 
   hey