C++的循环问题

在一个for循环体中,我需要用到两个变量。比如说:

for(int n=0;int f=n+1&&f<5;++n)
    cout<<f;

就像这种形式。我在vs2015上一跑就死循环了(。-_-。) 那这种情况下我应该如何改写代码让它能成功运行呢?
谢谢。

阅读 3.7k
6 个回答

首先来看你的代码

for(int n=0;int f=n+1&&f<5;++n)
    cout<<f;
    

中间循环终止条件为 int f=n+1&&f<5,&& 具有较高的优先级,所以等价于 int f=(n+1&&f<5) ,明显,f一直为1.原因知道了,怎么改就看你了。

在for 循环定义两个变量
for  (   int  a, b ;   ;  )

你的测试条件,没看懂
for(int n=0f=0;f<5;++n) 

cout<<f;
f=n+1;
    for (int n = 0; ; ++n){
        int f = n + 1;
        if (f >= 5) break;
        cout << f;
    }
for (int n = 0, f = 0; (f = n + 1) && (f<5); ++n)
    cout << f;

谢谢各位不吝赐教,我已经找到答案了。原因在于我把一个赋值语句放在了条件判断的地方。
安卓客户端不会修改问题,在这里统一谢谢楼上各位了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题