Não é possível entender o loop for com duas variáveis [duplicate]
Esta pergunta já tem uma resposta aqui:
Como funciona o operador de vírgula 9 respostasQuando uso duas variáveis em um loop for com condições diferentes, duas condições como as que usei abaixoi<3,j<2
o loop for está sempre em execução até a segunda condição falha
#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 ;
}
Nesse código,hello
é impresso 2 vezes. Por quê
Se eu usari<3,j<10
, "Hello" é impresso 10 vezes. Não consigo entender por que a primeira condição está sendo negligenciada. É dependente do compilador ou algo mais?
Tudo funciona normal se eu substituir por condições como || (OU) ou && (AND). Outra coisa é que não consigo inicializar iej no próprio loop for, isso está me mostrando um erro, mas funciona bem quando declaro variáveis no estilo C ou uma variável fora do loop for , por que é tão
O compilador que usei é o Orwell Dev C +
Desde já, obrigado