int c = someIntegerValue;
// Some code...
int i;
for (i = 0; i < 5, i < c; i++) {
...
}
Mój kompilator mówi error: expression has no effect
, który brzmi poprawnie. Które z tych 2 porównań będzie tutaj użyte? Domyślam się, że i < c
jest ignorowany, ale chciałem trochę potwierdzenie od innych, jak nie jestem w stanie uruchomić jeszcze ten kod ...Co robi ten przecinek w części * test * pętli for?
Nie ekspertem C, ale wydaje się, że stara się zrobić równowartość 'I <5 && i
Kompilator ma rację. "i <5" jest tutaj oceniane, ale wartość jest wyrzucana bez użycia i nie ma żadnych skutków ubocznych, więc programista wyraźnie coś źle zrozumiał. –
Dlaczego głosowanie w dół i głosy zamykają się? Operator przecinka nie jest najbardziej intuicyjną rzeczą na świecie. To mnie potknęło i koduję C przez prawie 2 dekady. –