![]() Vorherige Seite |
![]() Eine Ebene hoch |
![]() Nächste Seite |
---|
In der Zeile
i = i+3;
Steckt ein Ausdruck (i+3) und eine Zuweisung (i = Ausdruck). Dies kann in C verkürzt dargestellt werden als:
i += 3;
Diese Schreibweise erspart Redundanzen und entspricht auch mehr unserem Sprachgebrauch: "Erhöhe i um drei." statt "Weise i den Wert i plus drei zu."
Für die folgenden binären Operatoren op sind entsprechende Zuweisungsoperatoren op= erlaubt: +, -, *, /, %, &, |, ^, << und >>. Allgemein gilt:
expr1 op= expr2
ist äquivalent zu
expr1 = (expr1) op (expr2).
Die Klammer macht deutlich, dass z.B.
a *= b+2;
nicht als
a = a*b+2; /* falsche Interpretation */
sondern als
a = a*(b+2); /* richtige Interpretation */
bewertet wird.