当我在具有不同条件的 for 循环中使用两个变量时,我在下面使用了两个条件i<3,j<2
for 循环始终执行,直到第二个条件失败。
#include<iostream>
#include<conio.h>
using namespace std ;
int main()
{
int i,j ;
for(i=0,j=0;i<3,j<2;i++,j++)
{
cout<<"hello" ;
}
getch() ;
return 0 ;
}
在该代码中,hello
打印了 2 次。为什么?
如果我使用i<3,j<10
,“Hello”打印了10次。我不明白为什么第一个条件被忽略。是编译器依赖还是其他什么?
如果我用 || 之类的条件替换,一切正常(OR) 或 &&(AND)。另一件事是我无法在 for 循环本身中初始化 i 和 j,它向我显示一个错误,但当我声明 C 风格的变量或 for 循环之外的一个变量时工作正常,为什么会这样呢?
我使用的编译器是Orwell Dev C++。
提前致谢。
for(i=0,j=0;i<3,j<2;i++,j++)
相当于
for(i=0,j=0;j<2;i++,j++)
逗号表达式采用最后一个表达式的值。
无论哪个条件第一个,都将被忽略,仅使用第二个条件。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)