MudGuard: Problem: alert-Anweisung innerhalb von einer If Verzweigung

Beitrag lesen

Hi,

if(pz=0&&pz<30){
Ich übersetze: "Setze pz auf 0 und prüfe, ob pz < 30 ist."

Übersetzungsfehler.

Setze pz auf 0 und werte das Ergebnis der Zuweisung (also den zugewiesenen Wert) aus.
Da 0 false entspricht, wird der zweite Operand des &&-Operators nichts mehr am Ergebnis ändern können, wird also gar nicht mehr ausgewertet.

if(pz<50&&pz=30){
"Prüfe ob pz<50 und setze pz=30"

Etwas genauer:

Prüfe, ob pz < 50. Da das zutrifft (da pz ja auf 0 gesetzt wurde), werte auch den zweiten Operand des &&-Operators aus.
D.h. setze pz auf 30 und werte das Ergebnis der Zuweisung aus (30 wird als true interpretiert.
true und true ergibt true, also ab in den if-Zweig ...

cu,
Andreas

--
Warum nennt sich Andreas hier MudGuard?
Schreinerei Waechter
Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.