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

时间:2012-05-22 08:55:21

标签: c++ while-loop flags

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

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

MAIN

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

2 个答案:

答案 0 :(得分:1)

右。如果whilexflag == 1循环的主体将执行。但事实并非如此。

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

答案 1 :(得分:0)

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