Hallo Forum! Ich hab eine Frage, worauf die Antwort bestimmt ganz einfach ist. Aber ich bin eben nicht 100%ig sicher. Es handelt sich um die Bedingung bei z.B. einer if-Abfrage. Ich hab das bisher immer ganz ordentlich so gemacht: if(x == 0) {...} macht NUR DANN was, wenn x = 0 ist oder if(x != 0) {...} macht was, wenn x irgendwas anderes als 0 ist Jetzt hab ich aber nen Code vorliegen, wo steht if(x) {...} else {...} Ich interpretiere das so, daß die Bedingung erfüllt ist, wenn x irgendwas nur nicht 0 ist (z.B. 1). Sonst, also wenn x = 0 ist, dann (else). Daraufhin steht da aber noch if(!x) {...} else {...} Ich interpretiere das so, daß die Bedingung erfüllt ist, wenn x NICHT etwas anderes als 0 ist, also x = 0. Sonst, also wenn x etwas anderes als 0 ist, dann (else). So, WENN ich das jetzt richtig interpretiert haben sollte, DANN ist das doch doppelt-gemoppelt! Weil dann ist ja die erste if-else-Abfage einfach nur das Umgekehrte von der zweiter, oder? Hoffe ihr könnt mir bei diesem schlichten "Problem" helfen. Danke schonmal im Voraus, vG, Joachim
Du sollst nicht interpretieren, sondern ein C-Buch lesen. In C ist jeder Ausdruck, der ein Ergebnis von 0 liefert auch gleichzeitig 'logisch FALSE, während jedes Ergebnis ungleich 0 als 'logisch TRUE' gewertet wird if( x ) ist also identisch zu if( x != 0 ) und if( !x ) ist identisch zu if( x == 0 )
Hi und danke für die rasche Antwort! Hast ja recht mit dem Buch, aber ich bin grad nicht zu Hause und hab das Buch nicht greifbar :( . Aber ist meine "Verstehungsweise" des oberen Codes soweit korrekt? Ich finde, daß sich deine (Karl Heinz) Aussage mit meiner deckt ;) ...
Das hier > Daraufhin steht da aber noch > if(!x) > {...} > else > {...} > > Ich interpretiere das so, daß die Bedingung erfüllt ist, wenn x NICHT > etwas anderes als 0 ist, also x = 0. Sonst, also wenn x etwas anderes > als 0 ist, dann (else). ist falsch aufgefasst. Denk nochmal darüber nach.
:
Wiederhergestellt durch User
Karl heinz Buchegger schrieb: > Das hier > >> Daraufhin steht da aber noch >> if(!x) >> {...} >> else >> {...} >> >> Ich interpretiere das so, daß die Bedingung erfüllt ist, wenn x NICHT >> etwas anderes als 0 ist, also x = 0. Sonst, also wenn x etwas anderes >> als 0 ist, dann (else). > > ist falsch aufgefasst. Denk nochmal darüber nach. Vergiss diese Aussage. Deine Auffassung ist korrekt. Ich habe dein abschliessende Schlussfolgerung (die richtig ist) übersehen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.