異なる条件の for ループで 2 つの変数を使用するとi<3,j<2
、for ループの下で使用したような 2 つの条件は、2 番目の条件が失敗するまで常に実行されます。
#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
と、「こんにちは」が10回出力されます。なぜ最初の条件が無視されているのか理解できません。それはコンパイラに依存していますか、それとも何か他のものですか?
|| のような条件に置き換えると、すべてが正常に機能します。(OR) または &&(AND)。もう 1 つのことは、for ループ自体で i と j を初期化できないことです。エラーが表示されますが、C スタイルで変数を宣言するか、for ループの外で 1 つの変数を宣言すると正常に動作します。 、なぜそうなのですか?
私が使用したコンパイラは Orwell Dev C++ です。
前もって感謝します。