5.3 auswertung von ausdrücken · 2017-05-12 · 5.3 auswertung von ausdrücken assoziativität æ...
TRANSCRIPT
![Page 1: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/1.jpg)
5.3 Auswertung von Ausdrücken
Funktionen in Java bekommen Parameter/Argumente als Input,
und liefern als Output den Wert eines vorbestimmten Typs. Zum
Beispiel könnte man eine Funktion
in t min( in t a , in t b)
implementieren, die das Minimum ihrer Argumente zurückliefert.
Operatoren sind spezielle vordefinierte Funktionen, die in
Infix-Notation geschrieben werden (wenn sie binär sind):
a + b = +(a ,b)
Harald Räcke 78/656
![Page 2: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/2.jpg)
5.3 Auswertung von Ausdrücken
Ein Ausdruck ist eine Kombination von Literalen, Operatoren,
Funktionen, Variablen und Klammern, die verwendet wird, um
einen Wert zu berechnen.
Beispiele: (x z.B. vom Typ int)
ñ 7 + 4
ñ 3 / 5 + 3
ñ min(3,x) + 20
ñ x = 7
ñ x *= 2
5.3 Auswertung von Ausdrücken
Harald Räcke 79/656
![Page 3: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/3.jpg)
Operatoren
Unäre Operatoren:
symbol name types L/R level++ Post-increment (var) zahl, char links 2-- Post-decrement (var) zahl, char links 2++ Pre-increment (var) zahl, char rechts 3-- Pre-decrement (var) zahl, char rechts 3+ unäres Plus zahl, char rechts 3- unäres Minus zahl, char rechts 3
! Negation boolean rechts 3
5.3 Auswertung von Ausdrücken
Harald Räcke 80/656
![Page 4: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/4.jpg)
Achtung
5.3 Auswertung von Ausdrücken
Harald Räcke 81/656
![Page 5: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/5.jpg)
Prefix- und Postfixoperator
ñ Die Operatoranwendungen ++x und x++ inkrementieren
beide den Wert der Variablen x (als Seiteneffekt).
ñ ++x tut das, bevor der Wert des Ausdrucks ermittelt wird
(Pre-Increment).
ñ x++ tut das, nachdem der Wert ermittelt wurde
(Post-Increment).
ñ b = x++; entspricht:
b = x;x = x + 1;
ñ b = ++x; entspricht:
x = x + 1;b = x;
5.3 Auswertung von Ausdrücken
Harald Räcke 82/656
![Page 6: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/6.jpg)
Operatoren
Binäre arithmetische Operatoren:
byte, short, char werden nach int konvertiert
symbol name types L/R level
* Multiplikation zahl, char links 4/ Division zahl, char links 4
% Modulo zahl, char links 4+ Addition zahl, char links 5- Subtraktion zahl, char links 5
Konkatenation
symbol name types L/R level+ Konkatenation string links 5
5.3 Auswertung von Ausdrücken
Harald Räcke 83/656
![Page 7: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/7.jpg)
Operatoren
Vergleichsoperatoren:
symbol name types L/R level
> größer zahl, char links? 7>= größergleich zahl, char links? 7< kleiner zahl, char links? 7<= kleinergleich zahl, char links? 7== gleich primitiv links 8
!= ungleich primitiv links 8
5.3 Auswertung von Ausdrücken
Harald Räcke 84/656
![Page 8: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/8.jpg)
Operatoren
Boolsche Operatoren:
symbol name types L/R level
&& Und-Bedingung boolean links 12|| Oder-Bedingung boolean links 13
5.3 Auswertung von Ausdrücken
Harald Räcke 85/656
![Page 9: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/9.jpg)
Operatoren
Zuweisungsoperatoren:
symbol name types L/R level= Zuweisung var, wert rechts 15
*=,/=, %=,
+=, -=Zuweisung var, wert rechts 15
Für die letzte Form gilt:
v ◦= a ⇐⇒ v = (type(v)) (v ◦ a)
5.3 Auswertung von Ausdrücken
Harald Räcke 86/656
![Page 10: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/10.jpg)
Operatoren
Warnung:
ñ Eine Zuweisung x = y; ist in Wahrheit ein Ausdruck.
ñ Der Wert ist der Wert der rechten Seite.
ñ Die Modifizierung der Variablen x erfolgt als Seiteneffekt.
ñ Das Semikolon ’;’ hinter einem Ausdruck wirft nur den
Wert weg.
Fatal für Fehler in Bedingungen:
boolean x = false ;i f (x = true )
write ( " Sorry ! This must be an error . . . " ) ;
5.3 Auswertung von Ausdrücken
Harald Räcke 87/656
![Page 11: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/11.jpg)
5.3 Auswertung von Ausdrücken
Assoziativität
ñ Die Assoziativität entscheidet über die Reihenfolge bei
Operatoren gleicher Priorität. (links = der linkeste Operator
wird zuerst ausgeführt)
ñ Alle Operatoren einer Prioritätsgruppe haben dieselbe
Assoziativität.
ñ Bis auf Zuweisungsoperatoren (=, +=, etc.) sind alle binären
Operatoren linksassoziativ.
ñ unäre Operatoren, die ihr Argument rechts erwarten sind
rechtsassoziativ
ñ unäre Operatoren, die ihr Argument links erwarten
(postfix-Operatoren ++, --) sind linksassoziativ
ñ Der ternäre Bedingungsoperator (später) ist rechtsassoziativ
![Page 12: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/12.jpg)
5.3 Auswertung von Ausdrücken
Assoziativität
ñ Die Assoziativität entscheidet über die Reihenfolge bei
Operatoren gleicher Priorität. (links = der linkeste Operator
wird zuerst ausgeführt)
ñ Alle Operatoren einer Prioritätsgruppe haben dieselbe
Assoziativität.
ñ Bis auf Zuweisungsoperatoren (=, +=, etc.) sind alle binären
Operatoren linksassoziativ.
ñ unäre Operatoren, die ihr Argument rechts erwarten sind
rechtsassoziativ
ñ unäre Operatoren, die ihr Argument links erwarten
(postfix-Operatoren ++, --) sind linksassoziativ
ñ Der ternäre Bedingungsoperator (später) ist rechtsassoziativ
![Page 13: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/13.jpg)
5.3 Auswertung von Ausdrücken
Assoziativität
ñ Die Assoziativität entscheidet über die Reihenfolge bei
Operatoren gleicher Priorität. (links = der linkeste Operator
wird zuerst ausgeführt)
ñ Alle Operatoren einer Prioritätsgruppe haben dieselbe
Assoziativität.
ñ Bis auf Zuweisungsoperatoren (=, +=, etc.) sind alle binären
Operatoren linksassoziativ.
ñ unäre Operatoren, die ihr Argument rechts erwarten sind
rechtsassoziativ
ñ unäre Operatoren, die ihr Argument links erwarten
(postfix-Operatoren ++, --) sind linksassoziativ
ñ Der ternäre Bedingungsoperator (später) ist rechtsassoziativ
![Page 14: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/14.jpg)
5.3 Auswertung von Ausdrücken
Assoziativität
ñ Die Assoziativität entscheidet über die Reihenfolge bei
Operatoren gleicher Priorität. (links = der linkeste Operator
wird zuerst ausgeführt)
ñ Alle Operatoren einer Prioritätsgruppe haben dieselbe
Assoziativität.
ñ Bis auf Zuweisungsoperatoren (=, +=, etc.) sind alle binären
Operatoren linksassoziativ.
ñ unäre Operatoren, die ihr Argument rechts erwarten sind
rechtsassoziativ
ñ unäre Operatoren, die ihr Argument links erwarten
(postfix-Operatoren ++, --) sind linksassoziativ
ñ Der ternäre Bedingungsoperator (später) ist rechtsassoziativ
![Page 15: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/15.jpg)
5.3 Auswertung von Ausdrücken
Assoziativität
ñ Die Assoziativität entscheidet über die Reihenfolge bei
Operatoren gleicher Priorität. (links = der linkeste Operator
wird zuerst ausgeführt)
ñ Alle Operatoren einer Prioritätsgruppe haben dieselbe
Assoziativität.
ñ Bis auf Zuweisungsoperatoren (=, +=, etc.) sind alle binären
Operatoren linksassoziativ.
ñ unäre Operatoren, die ihr Argument rechts erwarten sind
rechtsassoziativ
ñ unäre Operatoren, die ihr Argument links erwarten
(postfix-Operatoren ++, --) sind linksassoziativ
ñ Der ternäre Bedingungsoperator (später) ist rechtsassoziativ
![Page 16: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/16.jpg)
5.3 Auswertung von Ausdrücken
Assoziativität
ñ Die Assoziativität entscheidet über die Reihenfolge bei
Operatoren gleicher Priorität. (links = der linkeste Operator
wird zuerst ausgeführt)
ñ Alle Operatoren einer Prioritätsgruppe haben dieselbe
Assoziativität.
ñ Bis auf Zuweisungsoperatoren (=, +=, etc.) sind alle binären
Operatoren linksassoziativ.
ñ unäre Operatoren, die ihr Argument rechts erwarten sind
rechtsassoziativ
ñ unäre Operatoren, die ihr Argument links erwarten
(postfix-Operatoren ++, --) sind linksassoziativ
ñ Der ternäre Bedingungsoperator (später) ist rechtsassoziativ
![Page 17: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/17.jpg)
5.3 Auswertung von Ausdrücken
Die Auswertung eines Ausdrucks liefert
ñ eine Variable (var),
ñ einen reinen Wert (val) oder
ñ void (void)
In den ersten beiden Fällen hat der Ausdruck dann einen
ñ Typ, z.B.: int, und einen
ñ Wert, z.B.: 42
Für z.B. Zuweisungen muss die Auswertung des Ausdrucks auf
der linken Seite eine Variable ergeben!!!
5.3 Auswertung von Ausdrücken
Harald Räcke 89/656
![Page 18: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/18.jpg)
5.3 Auswertung von Ausdrücken
In Java werden Unterausdrücke von links nach rechts
ausgewertet. D.h. um den Wert einer Operation zu berechnen:
ñ werte (rekursiv) alle Operanden von links nach rechts aus
ñ führe die Operation auf den Resultaten aus
Ausnahmen: ||, &&, und der ternäre Bedingungsoperator :?,
werten nicht all Operanden aus (Kurzschlussauswertung).
Man sollte nie Ausdrücke formulieren, deren Ergebnis von
der Auswertungsreihenfolge abhängt!!!
5.3 Auswertung von Ausdrücken
Harald Räcke 90/656
![Page 19: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/19.jpg)
5.3 Auswertung von Ausdrücken
In Java werden Unterausdrücke von links nach rechts
ausgewertet. D.h. um den Wert einer Operation zu berechnen:
ñ werte (rekursiv) alle Operanden von links nach rechts aus
ñ führe die Operation auf den Resultaten aus
Ausnahmen: ||, &&, und der ternäre Bedingungsoperator :?,
werten nicht all Operanden aus (Kurzschlussauswertung).
Man sollte nie Ausdrücke formulieren, deren Ergebnis von
der Auswertungsreihenfolge abhängt!!!
5.3 Auswertung von Ausdrücken
Harald Räcke 90/656
![Page 20: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/20.jpg)
5.3 Auswertung von Ausdrücken
Im folgenden betrachten wir Klammern als einen Operator der
nichts tut:
symbol name types L/R level
() Klammerung * links 0
5.3 Auswertung von Ausdrücken
Harald Räcke 91/656
![Page 21: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/21.jpg)
Beispiel: 2 + x * (z - d)
2 + x * ( z – d )2 + x * ( z – d )
![Page 22: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/22.jpg)
Beispiel: 2 + x * (z - d)
2 + x * ( z – d )2 + x * ( z – d )
![Page 23: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/23.jpg)
Beispiel: 2 + x * (z - d)
2 + x * ( z – d )2 + x * ( z – d )
![Page 24: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/24.jpg)
Beispiel: 2 + x * (z - d)
2 + x * ( )
z – d
2 + x * ( )
z – d
![Page 25: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/25.jpg)
Beispiel: 2 + x * (z - d)
2 + x * ( )
z – d
2 + x * ( )
z – d
![Page 26: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/26.jpg)
Beispiel: 2 + x * (z - d)
2 + *
x ( )
z – d
2 + *
x ( )
z – d
![Page 27: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/27.jpg)
Beispiel: 2 + x * (z - d)
2 + *
x ( )
z – d
2 + *
x ( )
z – d
![Page 28: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/28.jpg)
Beispiel: 2 + x * (z - d)
+
2 *
x ( )
z – d
+
2 *
x ( )
z – d
![Page 29: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/29.jpg)
Beispiel: 2 + x * (z - d)
+
2 *
x ( )
z – d
+
2 *
x ( )
z – d
![Page 30: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/30.jpg)
Beispiel: 2 + x * (z - d)
+
2 *
x ( )
–
z d
+
2 *
x ( )
–
z d
![Page 31: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/31.jpg)
Beispiel: 2 + x * (z - d)
+
2 *
x ( )
–
z d
+
2 *
x ( )
–
z d
-3x 7d 5z
![Page 32: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/32.jpg)
Beispiel: 2 + x * (z - d)
+
2 *
x ( )
–
z d
+
2 *
x ( )
–
z d
-3x 7d 5z
![Page 33: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/33.jpg)
Beispiel: 2 + x * (z - d)
+
2 *
x ( )
–
z d
2, intval
+
2 *
x ( )
–
z d
-3x 7d 5z
![Page 34: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/34.jpg)
Beispiel: 2 + x * (z - d)
+
2 *
x ( )
–
z d
2, intval
+
2 *
x ( )
–
z d
-3x 7d 5z
![Page 35: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/35.jpg)
Beispiel: 2 + x * (z - d)
+
2 *
x ( )
–
z d
2, intval
-3, intvar
+
2 *
x ( )
–
z d
-3x 7d 5z
![Page 36: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/36.jpg)
Beispiel: 2 + x * (z - d)
+
2 *
x ( )
–
z d
2, intval
-3, intvar
+
2 *
x ( )
–
z d
-3x 7d 5z
![Page 37: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/37.jpg)
Beispiel: 2 + x * (z - d)
+
2 *
x ( )
–
z d
2, intval
-3, intvar
5, intvar
+
2 *
x ( )
–
z d
-3x 7d 5z
![Page 38: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/38.jpg)
Beispiel: 2 + x * (z - d)
+
2 *
x ( )
–
z d
2, intval
-3, intvar
5, intvar
+
2 *
x ( )
–
z d
-3x 7d 5z
![Page 39: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/39.jpg)
Beispiel: 2 + x * (z - d)
+
2 *
x ( )
–
z d
2, intval
-3, intvar
5, intvar
7, intvar
+
2 *
x ( )
–
z d
-3x 7d 5z
![Page 40: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/40.jpg)
Beispiel: 2 + x * (z - d)
+
2 *
x ( )
–
z d
2, intval
-3, intvar
5, intvar
7, intvar
+
2 *
x ( )
–
z d
-3x 7d 5z
![Page 41: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/41.jpg)
Beispiel: 2 + x * (z - d)
+
2 *
x ( )
–
z d
2, intval
-3, intvar
5, intvar
7, intvar-2, int
val
+
2 *
x ( )
–
z d
-3x 7d 5z
![Page 42: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/42.jpg)
Beispiel: 2 + x * (z - d)
+
2 *
x ( )
–
z d
2, intval
-3, intvar
5, intvar
7, intvar-2, int
val
+
2 *
x ( )
–
z d
-3x 7d 5z
![Page 43: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/43.jpg)
Beispiel: 2 + x * (z - d)
+
2 *
x ( )
–
z d
2, intval
-3, intvar
5, intvar
7, intvar-2, int
val
-2, intval
+
2 *
x ( )
–
z d
-3x 7d 5z
![Page 44: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/44.jpg)
Beispiel: 2 + x * (z - d)
+
2 *
x ( )
–
z d
2, intval
-3, intvar
5, intvar
7, intvar-2, int
val
-2, intval
+
2 *
x ( )
–
z d
-3x 7d 5z
![Page 45: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/45.jpg)
Beispiel: 2 + x * (z - d)
+
2 *
x ( )
–
z d
2, intval
-3, intvar
5, intvar
7, intvar-2, int
val
-2, intval
6, intval
+
2 *
x ( )
–
z d
-3x 7d 5z
![Page 46: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/46.jpg)
Beispiel: 2 + x * (z - d)
+
2 *
x ( )
–
z d
2, intval
-3, intvar
5, intvar
7, intvar-2, int
val
-2, intval
6, intval
+
2 *
x ( )
–
z d
-3x 7d 5z
![Page 47: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/47.jpg)
Beispiel: 2 + x * (z - d)
+
2 *
x ( )
–
z d
2, intval
-3, intvar
5, intvar
7, intvar-2, int
val
-2, intval
6, intval
8, intval
+
2 *
x ( )
–
z d
-3x 7d 5z
![Page 48: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/48.jpg)
Beispiel: a = b = c = d = 0
a = b = c = d = 0a = b = c = d = 0
![Page 49: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/49.jpg)
Beispiel: a = b = c = d = 0
a = b = c = d = 0a = b = c = d = 0
![Page 50: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/50.jpg)
Beispiel: a = b = c = d = 0
a = b = c = d = 0a = b = c = d = 0
![Page 51: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/51.jpg)
Beispiel: a = b = c = d = 0
a = b = c = =
d 0
a = b = c = =
d 0
![Page 52: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/52.jpg)
Beispiel: a = b = c = d = 0
a = b = c = =
d 0
a = b = c = =
d 0
![Page 53: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/53.jpg)
Beispiel: a = b = c = d = 0
a = b = =
c =
d 0
a = b = =
c =
d 0
![Page 54: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/54.jpg)
Beispiel: a = b = c = d = 0
a = b = =
c =
d 0
a = b = =
c =
d 0
![Page 55: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/55.jpg)
Beispiel: a = b = c = d = 0
a = =
b =
c =
d 0
a = =
b =
c =
d 0
![Page 56: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/56.jpg)
Beispiel: a = b = c = d = 0
a = =
b =
c =
d 0
a = =
b =
c =
d 0
![Page 57: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/57.jpg)
Beispiel: a = b = c = d = 0
=
a =
b =
c =
d 0
=
a =
b =
c =
d 0
![Page 58: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/58.jpg)
Beispiel: a = b = c = d = 0
=
a =
b =
c =
d 0
=
a =
b =
c =
d 0
-3a 7b 5c 2d
![Page 59: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/59.jpg)
Beispiel: a = b = c = d = 0
=
a =
b =
c =
d 0
=
a =
b =
c =
d 0
-3a 7b 5c 2d
![Page 60: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/60.jpg)
Beispiel: a = b = c = d = 0
=
a =
b =
c =
d 0
-3, intvar
=
a =
b =
c =
d 0
-3a 7b 5c 2d
![Page 61: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/61.jpg)
Beispiel: a = b = c = d = 0
=
a =
b =
c =
d 0
-3, intvar
=
a =
b =
c =
d 0
-3a 7b 5c 2d
![Page 62: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/62.jpg)
Beispiel: a = b = c = d = 0
=
a =
b =
c =
d 0
-3, intvar
7, intvar
=
a =
b =
c =
d 0
-3a 7b 5c 2d
![Page 63: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/63.jpg)
Beispiel: a = b = c = d = 0
=
a =
b =
c =
d 0
-3, intvar
7, intvar
=
a =
b =
c =
d 0
-3a 7b 5c 2d
![Page 64: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/64.jpg)
Beispiel: a = b = c = d = 0
=
a =
b =
c =
d 0
-3, intvar
7, intvar
5, intvar
=
a =
b =
c =
d 0
-3a 7b 5c 2d
![Page 65: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/65.jpg)
Beispiel: a = b = c = d = 0
=
a =
b =
c =
d 0
-3, intvar
7, intvar
5, intvar
=
a =
b =
c =
d 0
-3a 7b 5c 2d
![Page 66: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/66.jpg)
Beispiel: a = b = c = d = 0
=
a =
b =
c =
d 0
-3, intvar
7, intvar
5, intvar
2, intvar
=
a =
b =
c =
d 0
-3a 7b 5c 2d
![Page 67: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/67.jpg)
Beispiel: a = b = c = d = 0
=
a =
b =
c =
d 0
-3, intvar
7, intvar
5, intvar
2, intvar
=
a =
b =
c =
d 0
-3a 7b 5c 2d
![Page 68: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/68.jpg)
Beispiel: a = b = c = d = 0
=
a =
b =
c =
d 0
-3, intvar
7, intvar
5, intvar
2, intvar
0, intval
=
a =
b =
c =
d 0
-3a 7b 5c 2d
![Page 69: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/69.jpg)
Beispiel: a = b = c = d = 0
=
a =
b =
c =
d 0
-3, intvar
7, intvar
5, intvar
2, intvar
0, intval
=
a =
b =
c =
d 0
-3a 7b 5c 2d
![Page 70: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/70.jpg)
Beispiel: a = b = c = d = 0
=
a =
b =
c =
d 0
-3, intvar
7, intvar
5, intvar
2, intvar
0, intval
0, intval
=
a =
b =
c =
d 0
-3a 7b 5c 0d
![Page 71: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/71.jpg)
Beispiel: a = b = c = d = 0
=
a =
b =
c =
d 0
-3, intvar
7, intvar
5, intvar
2, intvar
0, intval
0, intval
=
a =
b =
c =
d 0
-3a 7b 5c 0d
![Page 72: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/72.jpg)
Beispiel: a = b = c = d = 0
=
a =
b =
c =
d 0
-3, intvar
7, intvar
5, intvar
2, intvar
0, intval
0, intval
0, intval
=
a =
b =
c =
d 0
-3a 7b 0c 0d
![Page 73: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/73.jpg)
Beispiel: a = b = c = d = 0
=
a =
b =
c =
d 0
-3, intvar
7, intvar
5, intvar
2, intvar
0, intval
0, intval
0, intval
=
a =
b =
c =
d 0
-3a 7b 0c 0d
![Page 74: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/74.jpg)
Beispiel: a = b = c = d = 0
=
a =
b =
c =
d 0
-3, intvar
7, intvar
5, intvar
2, intvar
0, intval
0, intval
0, intval
0, intval
=
a =
b =
c =
d 0
-3a 0b 0c 0d
![Page 75: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/75.jpg)
Beispiel: a = b = c = d = 0
=
a =
b =
c =
d 0
-3, intvar
7, intvar
5, intvar
2, intvar
0, intval
0, intval
0, intval
0, intval
=
a =
b =
c =
d 0
-3a 0b 0c 0d
![Page 76: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/76.jpg)
Beispiel: a = b = c = d = 0
=
a =
b =
c =
d 0
-3, intvar
7, intvar
5, intvar
2, intvar
0, intval
0, intval
0, intval
0, intval
0, intval
=
a =
b =
c =
d 0
0a 0b 0c 0d
![Page 77: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/77.jpg)
Beispiel: a != 0 && b/a < 10
a != 0 && b / a < 10a != 0 && b / a < 10
![Page 78: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/78.jpg)
Beispiel: a != 0 && b/a < 10
a != 0 && b / a < 10a != 0 && b / a < 10
![Page 79: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/79.jpg)
Beispiel: a != 0 && b/a < 10
a != 0 && b / a < 10a != 0 && b / a < 10
![Page 80: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/80.jpg)
Beispiel: a != 0 && b/a < 10
a != 0 && /
b a
< 10a != 0 && /
b a
< 10
![Page 81: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/81.jpg)
Beispiel: a != 0 && b/a < 10
a != 0 && /
b a
< 10a != 0 && /
b a
< 10
![Page 82: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/82.jpg)
Beispiel: a != 0 && b/a < 10
a != 0 && <
/
b a
10
a != 0 && <
/
b a
10
![Page 83: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/83.jpg)
Beispiel: a != 0 && b/a < 10
a != 0 && <
/
b a
10
a != 0 && <
/
b a
10
![Page 84: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/84.jpg)
Beispiel: a != 0 && b/a < 10
!=
a 0
&& <
/
b a
10
!=
a 0
&& <
/
b a
10
![Page 85: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/85.jpg)
Beispiel: a != 0 && b/a < 10
!=
a 0
&& <
/
b a
10
!=
a 0
&& <
/
b a
10
![Page 86: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/86.jpg)
Beispiel: a != 0 && b/a < 10
&&
!=
a 0
<
/
b a
10
&&
!=
a 0
<
/
b a
10
![Page 87: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/87.jpg)
Beispiel: a != 0 && b/a < 10
&&
!=
a 0
<
/
b a
10
&&
!=
a 0
<
/
b a
10
0a 4b
![Page 88: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/88.jpg)
Beispiel: a != 0 && b/a < 10
&&
!=
a 0
<
/
b a
10
&&
!=
a 0
<
/
b a
10
0a 4b
![Page 89: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/89.jpg)
Beispiel: a != 0 && b/a < 10
&&
!=
a 0
<
/
b a
100, intvar
&&
!=
a 0
<
/
b a
10
0a 4b
![Page 90: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/90.jpg)
Beispiel: a != 0 && b/a < 10
&&
!=
a 0
<
/
b a
100, intvar
&&
!=
a 0
<
/
b a
10
0a 4b
![Page 91: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/91.jpg)
Beispiel: a != 0 && b/a < 10
&&
!=
a 0
<
/
b a
100, intvar
0, intval
&&
!=
a 0
<
/
b a
10
0a 4b
![Page 92: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/92.jpg)
Beispiel: a != 0 && b/a < 10
&&
!=
a 0
<
/
b a
100, intvar
0, intval
&&
!=
a 0
<
/
b a
10
0a 4b
![Page 93: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/93.jpg)
Beispiel: a != 0 && b/a < 10
&&
!=
a 0
<
/
b a
100, intvar
0, intval
false, booleanval
&&
!=
a 0
<
/
b a
10
0a 4b
![Page 94: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/94.jpg)
Beispiel: a != 0 && b/a < 10
&&
!=
a 0
<
/
b a
100, intvar
0, intval
false, booleanval
&&
!=
a 0
<
/
b a
10
0a 4b
![Page 95: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/95.jpg)
Beispiel: a != 0 && b/a < 10
&&
!=
a 0
<
/
b a
100, intvar
0, intval
false, booleanval
false, booleanval
&&
!=
a 0
<
/
b a
10
0a 4b
![Page 96: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/96.jpg)
Beispiel: y = x + ++x
y = x + ++ xy = x + ++ x
![Page 97: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/97.jpg)
Beispiel: y = x + ++x
y = x + ++ xy = x + ++ x
![Page 98: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/98.jpg)
Beispiel: y = x + ++x
y = x + ++ xy = x + ++ x
![Page 99: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/99.jpg)
Beispiel: y = x + ++x
y = x + ++
x
y = x + ++
x
![Page 100: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/100.jpg)
Beispiel: y = x + ++x
y = x + ++
x
y = x + ++
x
![Page 101: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/101.jpg)
Beispiel: y = x + ++x
y = +
x ++
x
y = +
x ++
x
![Page 102: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/102.jpg)
Beispiel: y = x + ++x
y = +
x ++
x
y = +
x ++
x
![Page 103: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/103.jpg)
Beispiel: y = x + ++x
=
y +
x ++
x
=
y +
x ++
x
![Page 104: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/104.jpg)
Beispiel: y = x + ++x
=
y +
x ++
x
=
y +
x ++
x
4x 0y
![Page 105: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/105.jpg)
Beispiel: y = x + ++x
=
y +
x ++
x
=
y +
x ++
x
4x 0y
![Page 106: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/106.jpg)
Beispiel: y = x + ++x
=
y +
x ++
x
0, intvar
=
y +
x ++
x
4x 0y
![Page 107: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/107.jpg)
Beispiel: y = x + ++x
=
y +
x ++
x
0, intvar
=
y +
x ++
x
4x 0y
![Page 108: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/108.jpg)
Beispiel: y = x + ++x
=
y +
x ++
x
0, intvar
4, intvar
=
y +
x ++
x
4x 0y
![Page 109: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/109.jpg)
Beispiel: y = x + ++x
=
y +
x ++
x
0, intvar
4, intvar
=
y +
x ++
x
4x 0y
![Page 110: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/110.jpg)
Beispiel: y = x + ++x
=
y +
x ++
x
0, intvar
4, intvar
4, intvar
=
y +
x ++
x
4x 0y
![Page 111: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/111.jpg)
Beispiel: y = x + ++x
=
y +
x ++
x
0, intvar
4, intvar
4, intvar
=
y +
x ++
x
4x 0y
![Page 112: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/112.jpg)
Beispiel: y = x + ++x
=
y +
x ++
x
0, intvar
4, intvar
4, intvar
5, intval
=
y +
x ++
x
5x 0y
![Page 113: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/113.jpg)
Beispiel: y = x + ++x
=
y +
x ++
x
0, intvar
4, intvar
4, intvar
5, intval
=
y +
x ++
x
5x 0y
![Page 114: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/114.jpg)
Beispiel: y = x + ++x
=
y +
x ++
x
0, intvar
4, intvar
4, intvar
5, intval
9, intval
=
y +
x ++
x
5x 0y
![Page 115: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/115.jpg)
Beispiel: y = x + ++x
=
y +
x ++
x
0, intvar
4, intvar
4, intvar
5, intval
9, intval
=
y +
x ++
x
5x 0y
![Page 116: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/116.jpg)
Beispiel: y = x + ++x
=
y +
x ++
x
0, intvar
4, intvar
4, intvar
5, intval
9, intval
9, intval
=
y +
x ++
x
5x 9y
![Page 117: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/117.jpg)
Beispiel: y = x++ + x
y = x ++ + xy = x ++ + x
![Page 118: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/118.jpg)
Beispiel: y = x++ + x
y = x ++ + xy = x ++ + x
![Page 119: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/119.jpg)
Beispiel: y = x++ + x
y = x ++ + xy = x ++ + x
![Page 120: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/120.jpg)
Beispiel: y = x++ + x
y = ++
x
+ xy = ++
x
+ x
![Page 121: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/121.jpg)
Beispiel: y = x++ + x
y = ++
x
+ xy = ++
x
+ x
![Page 122: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/122.jpg)
Beispiel: y = x++ + x
y = +
++
x
x
y = +
++
x
x
![Page 123: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/123.jpg)
Beispiel: y = x++ + x
y = +
++
x
x
y = +
++
x
x
![Page 124: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/124.jpg)
Beispiel: y = x++ + x
=
y +
++
x
x
=
y +
++
x
x
![Page 125: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/125.jpg)
Beispiel: y = x++ + x
=
y +
++
x
x
=
y +
++
x
x
4x 0y
![Page 126: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/126.jpg)
Beispiel: y = x++ + x
=
y +
++
x
x
=
y +
++
x
x
4x 0y
![Page 127: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/127.jpg)
Beispiel: y = x++ + x
=
y +
++
x
x
0, intvar
=
y +
++
x
x
4x 0y
![Page 128: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/128.jpg)
Beispiel: y = x++ + x
=
y +
++
x
x
0, intvar
=
y +
++
x
x
4x 0y
![Page 129: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/129.jpg)
Beispiel: y = x++ + x
=
y +
++
x
x
0, intvar
4, intvar
=
y +
++
x
x
4x 0y
![Page 130: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/130.jpg)
Beispiel: y = x++ + x
=
y +
++
x
x
0, intvar
4, intvar
=
y +
++
x
x
4x 0y
![Page 131: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/131.jpg)
Beispiel: y = x++ + x
=
y +
++
x
x
0, intvar
4, intvar
4, intval
=
y +
++
x
x
5x 0y
![Page 132: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/132.jpg)
Beispiel: y = x++ + x
=
y +
++
x
x
0, intvar
4, intvar
4, intval
=
y +
++
x
x
5x 0y
![Page 133: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/133.jpg)
Beispiel: y = x++ + x
=
y +
++
x
x
0, intvar
4, intvar
4, intval
5, intvar
=
y +
++
x
x
5x 0y
![Page 134: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/134.jpg)
Beispiel: y = x++ + x
=
y +
++
x
x
0, intvar
4, intvar
4, intval
5, intvar
=
y +
++
x
x
5x 0y
![Page 135: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/135.jpg)
Beispiel: y = x++ + x
=
y +
++
x
x
0, intvar
4, intvar
4, intval
5, intvar
9, intval
=
y +
++
x
x
5x 0y
![Page 136: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/136.jpg)
Beispiel: y = x++ + x
=
y +
++
x
x
0, intvar
4, intvar
4, intval
5, intvar
9, intval
=
y +
++
x
x
5x 0y
![Page 137: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/137.jpg)
Beispiel: y = x++ + x
=
y +
++
x
x
0, intvar
4, intvar
4, intval
5, intvar
9, intval
9, intval
=
y +
++
x
x
5x 9y
![Page 138: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/138.jpg)
Beispiel: y = x++ + x
=
y +
++
x
x
0, intvar
4, intvar
4, intval
5, intvar
9, intval
9, intval
=
y +
++
x
x
5x 9y
![Page 139: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/139.jpg)
Impliziter Typecast
Wenn ein Ausdruck vom TypA an einer Stelle verwendet wird, wo
ein Ausdruck vom TypB erforderlich ist, wird
ñ entweder der Ausdruck vom TypA in einen Ausdruck vom
TypB gecasted (impliziter Typecast),
ñ oder ein Compilerfehler erzeugt, falls dieser Cast nicht
(automatisch) erlaubt ist.
Beispiel: Zuweisung
long x = 5;int y = 3;x = y ; // impl iz i ter Cast von int nach long
![Page 140: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/140.jpg)
Erlaubte Implizite Typecasts – Numerische Typen
byte
short
int
long
float
double
char
ganze Zahlen
Gleitkommazahlen
Konvertierung von long nach double oder von int nach float
kann Information verlieren wird aber automatisch durchgeführt.
![Page 141: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/141.jpg)
Welcher Typ wird benötigt?
Operatoren sind üblicherweise überladen, d.h. ein Symbol (+, -,
. . . ) steht in Abhängigkeit der Parameter (Argumente) für
unterschiedliche Funktionen.
+ : int -→ int
+ : long -→ long
+ : float -→ float
+ : double -→ double
+ : int× int -→ int
+ : long× long -→ long
+ : float× float -→ float
+ : double× double -→ double
+ : String× String -→ String
Der Compiler muss in der Lage sein während der Compilierung
die richtige Funktion zu bestimmen.
![Page 142: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/142.jpg)
Impliziter Typecast
Der Compiler wertet nur die Typen des Ausdrucksbaums aus.
ñ Für jeden inneren Knoten wählt er dann die geeignete
Funktion (z.B. + : long× long -→ long) falls ein +-Knoten
zwei long-Argumente erhält.
ñ Falls keine passende Funktion gefunden wird, versucht der
Compiler durch implizite Typecasts die Operanden an eine
Funktion anzupassen.
ñ Dies geschieht auch für selbstgeschriebene Funktionen (z.B.
min(int a, int b) und min(long a, long b)).
ñ Der Compiler nimmt die Funktion mit der speziellsten
Signatur.
![Page 143: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/143.jpg)
Speziellste Signatur
5.3 Auswertung von Ausdrücken
Harald Räcke 101/656
![Page 144: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/144.jpg)
Ordnungsrelationen
Relation �: TypA � TypB falls TypA nach TypB (implizit) gecasted
werden kann:
ñ reflexiv: T � Tñ transitiv: T1 � T2 ∧ T2 � T3 ⇒ T1 � T3
ñ antisymmetrisch: T1 � T2 ∧ T2 � T1 ⇒ T1 = T2
d.h., � definiert Halbordnung auf der Menge der Typen.
Relation �k: (T1, . . . , Tk) �k (T ′1, . . . , T ′k) falls Ti � T ′i für alle
i ∈ {1, . . . , k}.ñ reflexiv: T �k Tñ transitiv: T1 �k T2 ∧T2 �k T3 ⇒ T1 �k T3
ñ antisymmetrisch: T1 �k T2 ∧T2 �k T1 ⇒ T1 = T2
d.h., �k definiert Halbordnung auf der Menge der k-Tupel von
Typen.
![Page 145: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/145.jpg)
Ordnungsrelationen
Relation �: TypA � TypB falls TypA nach TypB (implizit) gecasted
werden kann:
ñ reflexiv: T � Tñ transitiv: T1 � T2 ∧ T2 � T3 ⇒ T1 � T3
ñ antisymmetrisch: T1 � T2 ∧ T2 � T1 ⇒ T1 = T2
d.h., � definiert Halbordnung auf der Menge der Typen.
Relation �k: (T1, . . . , Tk) �k (T ′1, . . . , T ′k) falls Ti � T ′i für alle
i ∈ {1, . . . , k}.ñ reflexiv: T �k Tñ transitiv: T1 �k T2 ∧T2 �k T3 ⇒ T1 �k T3
ñ antisymmetrisch: T1 �k T2 ∧T2 �k T1 ⇒ T1 = T2
d.h., �k definiert Halbordnung auf der Menge der k-Tupel von
Typen.
![Page 146: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/146.jpg)
f
T1 T2 Tk−1 Tk. . .
R1 f(T1)R2 f(T2)
...
R` f(T`)
T1, . . . ,T` sind k-Tupel von Typen für die eine Definition von fexistiert.
T = (T1, . . . , Tk) ist das k-tupel von Typen mit dem f aufgerufen
wird.
Menge aller möglichen Funktionen/Tupel:
M := {Ti|T �k Ti} .
Wähle kleinstes Element aus M falls M ein eindeutig kleinstes
Element besitzt (sonst Compilerfehler).
![Page 147: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/147.jpg)
f
T1 T2 Tk−1 Tk. . .
R1 f(T1)R2 f(T2)
...
R` f(T`)
T1, . . . ,T` sind k-Tupel von Typen für die eine Definition von fexistiert.
T = (T1, . . . , Tk) ist das k-tupel von Typen mit dem f aufgerufen
wird.
Menge aller möglichen Funktionen/Tupel:
M := {Ti|T �k Ti} .
Wähle kleinstes Element aus M falls M ein eindeutig kleinstes
Element besitzt (sonst Compilerfehler).
![Page 148: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/148.jpg)
f
T1 T2 Tk−1 Tk. . .
R1 f(T1)R2 f(T2)
...
R` f(T`)
T1, . . . ,T` sind k-Tupel von Typen für die eine Definition von fexistiert.
T = (T1, . . . , Tk) ist das k-tupel von Typen mit dem f aufgerufen
wird.
Menge aller möglichen Funktionen/Tupel:
M := {Ti|T �k Ti} .
Wähle kleinstes Element aus M falls M ein eindeutig kleinstes
Element besitzt (sonst Compilerfehler).
![Page 149: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/149.jpg)
Impliziter Typecast – Numerische Typen
Angenommen wir haben Funktionen
int min(int a, int b)
float min(float a, float b)
double min(double a, double b)
definiert.
1 long a = 7, b = 3;2 double d = min(a, b);
würde die Funktion float min(float a, float b) aufrufen.
5.3 Auswertung von Ausdrücken
Harald Räcke 104/656
![Page 150: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/150.jpg)
Impliziter Typecast
Bei Ausdrücken mit Seiteneffekten (Zuweisungen, ++ , - -) gelten
andere Regeln:
Beispiel: Zuweisungen
= : byte∗ × byte -→ byte
= : char∗ × char -→ char
= : short∗ × short -→ short
= : int∗ × int -→ int
= : long∗ × long -→ long
= : float∗ × float -→ float
= : double∗ × double -→ double
Es wird nur der Parameter konvertiert, der nicht dem Seiteneffekt
unterliegt.
5.3 Auswertung von Ausdrücken
Harald Räcke 105/656
![Page 151: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/151.jpg)
5.3 Auswertung von Ausdrücken
Der Funktionsaufrufoperator:
symbol name types L/R level
() Funktionsaufruf Funktionsname, * links 1
5.3 Auswertung von Ausdrücken
Harald Räcke 106/656
![Page 152: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/152.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
x = min ( a , min ( a , b ) + 4L )x = min ( a , min ( a , b ) + 4L )
![Page 153: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/153.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
x = min ( a , min ( a , b ) + 4L )x = min ( a , min ( a , b ) + 4L )
![Page 154: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/154.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
x = min ( a , min ( a , b ) + 4L )x = min ( a , min ( a , b ) + 4L )
![Page 155: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/155.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
x = ( )
min a min ( a , b ) + 4L
x = ( )
min a min ( a , b ) + 4L
![Page 156: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/156.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
x = ( )
min a min ( a , b ) + 4L
x = ( )
min a min ( a , b ) + 4L
![Page 157: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/157.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
x = ( )
min a ( )
min a b
+ 4L
x = ( )
min a ( )
min a b
+ 4L
![Page 158: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/158.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
x = ( )
min a ( )
min a b
+ 4L
x = ( )
min a ( )
min a b
+ 4L
![Page 159: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/159.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
x = ( )
min a +
( )
min a b
4L
x = ( )
min a +
( )
min a b
4L
![Page 160: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/160.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
x = ( )
min a +
( )
min a b
4L
x = ( )
min a +
( )
min a b
4L
![Page 161: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/161.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 162: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/162.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 163: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/163.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
7, longvar
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 164: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/164.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
7, longvar
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 165: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/165.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
7, longvar
◦, function list
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 166: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/166.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
7, longvar
◦, function list
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 167: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/167.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
7, longvar
◦, function list 3, intvar
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 168: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/168.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
7, longvar
◦, function list 3, intvar
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 169: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/169.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
7, longvar
◦, function list 3, intvar
◦, function list
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 170: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/170.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
7, longvar
◦, function list 3, intvar
◦, function list
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 171: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/171.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
7, longvar
◦, function list 3, intvar
◦, function list 3, intvar
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 172: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/172.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
7, longvar
◦, function list 3, intvar
◦, function list 3, intvar
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 173: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/173.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
7, longvar
◦, function list 3, intvar
◦, function list 3, intvar
5, intvar
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 174: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/174.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
7, longvar
◦, function list 3, intvar
◦, function list 3, intvar
5, intvar
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 175: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/175.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
7, longvar
◦, function list 3, intvar
◦, function list 3, intvar
5, intvar
3, intval
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 176: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/176.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
7, longvar
◦, function list 3, intvar
◦, function list 3, intvar
5, intvar
3, intval
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 177: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/177.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
7, longvar
◦, function list 3, intvar
◦, function list 3, intvar
5, intvar
3, intval
4, longval
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 178: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/178.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
7, longvar
◦, function list 3, intvar
◦, function list 3, intvar
5, intvar
3, intval
4, longval
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 179: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/179.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
7, longvar
◦, function list 3, intvar
◦, function list 3, intvar
5, intvar
3, intval
4, longval
7, longval
long
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 180: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/180.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
7, longvar
◦, function list 3, intvar
◦, function list 3, intvar
5, intvar
3, intval
4, longval
7, longval
long
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 181: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/181.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
7, longvar
◦, function list 3, intvar
◦, function list 3, intvar
5, intvar
3, intval
4, longval
7, longval
3.0, floatval
long
float float
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 182: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/182.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
7, longvar
◦, function list 3, intvar
◦, function list 3, intvar
5, intvar
3, intval
4, longval
7, longval
3.0, floatval
long
float float
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
![Page 183: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/183.jpg)
Beispiel: x = min(a, min(a,b) + 4L)
=
x ( )
min a +
( )
min a b
4L
7, longvar
◦, function list 3, intvar
◦, function list 3, intvar
5, intvar
3, intval
4, longval
7, longval
3.0, floatval
long
float float
=
x ( )
min a +
( )
min a b
4L
int min(int,int)float min(float,float)double min(double,double)
7long x 3int a 5int b
ERROR
float is not casted to long
![Page 184: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/184.jpg)
Impliziter Typecast – Strings
Spezialfall
ñ Falls beim Operator + ein Typ vom Typ String ist, wird der
andere auch in einen String umgewandelt.
=⇒ Stringkonkatenation.
ñ Jeder Typ in Java besitzt eine Stringrepresentation.
Funktioniert nicht bei selbstgeschriebenen Funktionen.
5.3 Auswertung von Ausdrücken
Harald Räcke 108/656
![Page 185: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/185.jpg)
Beispiel: s = a + b
s = a + bs = a + b
![Page 186: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/186.jpg)
Beispiel: s = a + b
s = a + bs = a + b
![Page 187: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/187.jpg)
Beispiel: s = a + b
s = a + bs = a + b
![Page 188: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/188.jpg)
Beispiel: s = a + b
s = +
a b
s = +
a b
![Page 189: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/189.jpg)
Beispiel: s = a + b
s = +
a b
s = +
a b
![Page 190: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/190.jpg)
Beispiel: s = a + b
=
s +
a b
=
s +
a b
![Page 191: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/191.jpg)
Beispiel: s = a + b
=
s +
a b
=
s +
a b
String s "Hallo" 2a 6b
![Page 192: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/192.jpg)
Beispiel: s = a + b
=
s +
a b
=
s +
a b
String s "Hallo" 2a 6b
![Page 193: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/193.jpg)
Beispiel: s = a + b
=
s +
a b
"Hallo", Stringvar
=
s +
a b
String s "Hallo" 2a 6b
![Page 194: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/194.jpg)
Beispiel: s = a + b
=
s +
a b
"Hallo", Stringvar
=
s +
a b
String s "Hallo" 2a 6b
![Page 195: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/195.jpg)
Beispiel: s = a + b
=
s +
a b
"Hallo", Stringvar
2, intvar
=
s +
a b
String s "Hallo" 2a 6b
![Page 196: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/196.jpg)
Beispiel: s = a + b
=
s +
a b
"Hallo", Stringvar
2, intvar
=
s +
a b
String s "Hallo" 2a 6b
![Page 197: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/197.jpg)
Beispiel: s = a + b
=
s +
a b
"Hallo", Stringvar
2, intvar
6, intvar
=
s +
a b
String s "Hallo" 2a 6b
![Page 198: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/198.jpg)
Beispiel: s = a + b
=
s +
a b
"Hallo", Stringvar
2, intvar
6, intvar
=
s +
a b
String s "Hallo" 2a 6b
![Page 199: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/199.jpg)
Beispiel: s = a + b
=
s +
a b
"Hallo", Stringvar
2, intvar
6, intvar
8, intval
=
s +
a b
String s "Hallo" 2a 6b
![Page 200: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/200.jpg)
Beispiel: s = a + b
=
s +
a b
"Hallo", Stringvar
2, intvar
6, intvar
8, intval
=
s +
a b
String s "Hallo" 2a 6b
![Page 201: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/201.jpg)
Beispiel: s = a + b
=
s +
a b
"Hallo", Stringvar
2, intvar
6, intvar
8, intval
=
s +
a b
String s "Hallo" 2a 6b
ERROR
int is not casted to String
![Page 202: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/202.jpg)
Beispiel: s = "" + a + b
s = "" + a + bs = "" + a + b
![Page 203: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/203.jpg)
Beispiel: s = "" + a + b
s = "" + a + bs = "" + a + b
![Page 204: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/204.jpg)
Beispiel: s = "" + a + b
s = "" + a + bs = "" + a + b
![Page 205: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/205.jpg)
Beispiel: s = "" + a + b
s = +
"" a
+ bs = +
"" a
+ b
![Page 206: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/206.jpg)
Beispiel: s = "" + a + b
s = +
"" a
+ bs = +
"" a
+ b
![Page 207: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/207.jpg)
Beispiel: s = "" + a + b
s = +
+
"" a
b
s = +
+
"" a
b
![Page 208: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/208.jpg)
Beispiel: s = "" + a + b
s = +
+
"" a
b
s = +
+
"" a
b
![Page 209: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/209.jpg)
Beispiel: s = "" + a + b
=
s +
+
"" a
b
=
s +
+
"" a
b
String s "Hallo" 2a 6b
![Page 210: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/210.jpg)
Beispiel: s = "" + a + b
=
s +
+
"" a
b
=
s +
+
"" a
b
String s "Hallo" 2a 6b
![Page 211: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/211.jpg)
Beispiel: s = "" + a + b
=
s +
+
"" a
b
"Hallo", Stringvar
=
s +
+
"" a
b
String s "Hallo" 2a 6b
![Page 212: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/212.jpg)
Beispiel: s = "" + a + b
=
s +
+
"" a
b
"Hallo", Stringvar
=
s +
+
"" a
b
String s "Hallo" 2a 6b
![Page 213: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/213.jpg)
Beispiel: s = "" + a + b
=
s +
+
"" a
b
"Hallo", Stringvar
"", Stringval
=
s +
+
"" a
b
String s "Hallo" 2a 6b
![Page 214: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/214.jpg)
Beispiel: s = "" + a + b
=
s +
+
"" a
b
"Hallo", Stringvar
"", Stringval
=
s +
+
"" a
b
String s "Hallo" 2a 6b
![Page 215: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/215.jpg)
Beispiel: s = "" + a + b
=
s +
+
"" a
b
"Hallo", Stringvar
"", Stringval
2, intvar
=
s +
+
"" a
b
String s "Hallo" 2a 6b
![Page 216: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/216.jpg)
Beispiel: s = "" + a + b
=
s +
+
"" a
b
"Hallo", Stringvar
"", Stringval
2, intvar
=
s +
+
"" a
b
String s "Hallo" 2a 6b
![Page 217: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/217.jpg)
Beispiel: s = "" + a + b
=
s +
+
"" a
b
"Hallo", Stringvar
"", Stringval
2, intvar
"2", Stringval
=
s +
+
"" a
b
String s "Hallo" 2a 6b
String
![Page 218: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/218.jpg)
Beispiel: s = "" + a + b
=
s +
+
"" a
b
"Hallo", Stringvar
"", Stringval
2, intvar
"2", Stringval
=
s +
+
"" a
b
String s "Hallo" 2a 6b
String
![Page 219: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/219.jpg)
Beispiel: s = "" + a + b
=
s +
+
"" a
b
"Hallo", Stringvar
"", Stringval
2, intvar
"2", Stringval
6, intval
=
s +
+
"" a
b
String s "Hallo" 2a 6b
String
![Page 220: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/220.jpg)
Beispiel: s = "" + a + b
=
s +
+
"" a
b
"Hallo", Stringvar
"", Stringval
2, intvar
"2", Stringval
6, intval
=
s +
+
"" a
b
String s "Hallo" 2a 6b
String
![Page 221: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/221.jpg)
Beispiel: s = "" + a + b
=
s +
+
"" a
b
"Hallo", Stringvar
"", Stringval
2, intvar
"2", Stringval
6, intval
"26", Stringval
=
s +
+
"" a
b
String s "Hallo" 2a 6b
String
String
![Page 222: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/222.jpg)
Beispiel: s = "" + a + b
=
s +
+
"" a
b
"Hallo", Stringvar
"", Stringval
2, intvar
"2", Stringval
6, intval
"26", Stringval
=
s +
+
"" a
b
String s "Hallo" 2a 6b
String
String
![Page 223: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/223.jpg)
Beispiel: s = "" + a + b
=
s +
+
"" a
b
"Hallo", Stringvar
"", Stringval
2, intvar
"2", Stringval
6, intval
"26", Stringval
"26", Stringval
=
s +
+
"" a
b
String s "Hallo" 2a 6b
"26"
String
String
![Page 224: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/224.jpg)
Beispiel: s = s + 1
s = s + 1s = s + 1
![Page 225: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/225.jpg)
Beispiel: s = s + 1
s = s + 1s = s + 1
![Page 226: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/226.jpg)
Beispiel: s = s + 1
s = s + 1s = s + 1
![Page 227: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/227.jpg)
Beispiel: s = s + 1
s = +
s 1
s = +
s 1
![Page 228: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/228.jpg)
Beispiel: s = s + 1
s = +
s 1
s = +
s 1
![Page 229: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/229.jpg)
Beispiel: s = s + 1
=
s +
s 1
=
s +
s 1
![Page 230: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/230.jpg)
Beispiel: s = s + 1
=
s +
s 1
=
s +
s 1
4short s
![Page 231: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/231.jpg)
Beispiel: s = s + 1
=
s +
s 1
=
s +
s 1
4short s
![Page 232: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/232.jpg)
Beispiel: s = s + 1
=
s +
s 1
4, shortvar
=
s +
s 1
4short s
![Page 233: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/233.jpg)
Beispiel: s = s + 1
=
s +
s 1
4, shortvar
=
s +
s 1
4short s
![Page 234: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/234.jpg)
Beispiel: s = s + 1
=
s +
s 1
4, shortvar
4, shortvar
=
s +
s 1
4short s
![Page 235: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/235.jpg)
Beispiel: s = s + 1
=
s +
s 1
4, shortvar
4, shortvar
=
s +
s 1
4short s
![Page 236: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/236.jpg)
Beispiel: s = s + 1
=
s +
s 1
4, shortvar
4, shortvar
1, intval
=
s +
s 1
4short s
![Page 237: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/237.jpg)
Beispiel: s = s + 1
=
s +
s 1
4, shortvar
4, shortvar
1, intval
=
s +
s 1
4short s
![Page 238: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/238.jpg)
Beispiel: s = s + 1
=
s +
s 1
4, shortvar
4, shortvar
1, intval
5, intval
=
s +
s 1
int
4short s
![Page 239: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/239.jpg)
Beispiel: s = s + 1
=
s +
s 1
4, shortvar
4, shortvar
1, intval
5, intval
=
s +
s 1
int
4short s
![Page 240: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/240.jpg)
Beispiel: s = s + 1
=
s +
s 1
4, shortvar
4, shortvar
1, intval
5, intval
=
s +
s 1
int
4short s
ERRORint is not casted to short
![Page 241: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/241.jpg)
Beispiel: s = s + 1
=
s +
s 1
4, shortvar
4, shortvar
1, intval
5, intval
=
s +
s 1
int
4short s
ERRORint is not casted to short
![Page 242: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/242.jpg)
Beispiel: s = 7 + 1
s = 7 + 1s = 7 + 1
![Page 243: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/243.jpg)
Beispiel: s = 7 + 1
s = 7 + 1s = 7 + 1
![Page 244: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/244.jpg)
Beispiel: s = 7 + 1
s = 7 + 1s = 7 + 1
![Page 245: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/245.jpg)
Beispiel: s = 7 + 1
s = +
7 1
s = +
7 1
![Page 246: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/246.jpg)
Beispiel: s = 7 + 1
s = +
7 1
s = +
7 1
![Page 247: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/247.jpg)
Beispiel: s = 7 + 1
=
s +
7 1
=
s +
7 1
![Page 248: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/248.jpg)
Beispiel: s = 7 + 1
=
s +
7 1
=
s +
7 1
4short s
![Page 249: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/249.jpg)
Beispiel: s = 7 + 1
=
s +
7 1
=
s +
7 1
4short s
![Page 250: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/250.jpg)
Beispiel: s = 7 + 1
=
s +
7 1
4, shortvar
=
s +
7 1
4short s
![Page 251: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/251.jpg)
Beispiel: s = 7 + 1
=
s +
7 1
4, shortvar
=
s +
7 1
4short s
![Page 252: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/252.jpg)
Beispiel: s = 7 + 1
=
s +
7 1
4, shortvar
7, intval
=
s +
7 1
4short s
![Page 253: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/253.jpg)
Beispiel: s = 7 + 1
=
s +
7 1
4, shortvar
7, intval
=
s +
7 1
4short s
![Page 254: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/254.jpg)
Beispiel: s = 7 + 1
=
s +
7 1
4, shortvar
7, intval
1, intval
=
s +
7 1
4short s
![Page 255: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/255.jpg)
Beispiel: s = 7 + 1
=
s +
7 1
4, shortvar
7, intval
1, intval
=
s +
7 1
4short s
![Page 256: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/256.jpg)
Beispiel: s = 7 + 1
=
s +
7 1
4, shortvar
7, intval
1, intval
8, intval
=
s +
7 1
4short s
![Page 257: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/257.jpg)
Beispiel: s = 7 + 1
=
s +
7 1
4, shortvar
7, intval
1, intval
8, intval
=
s +
7 1
4short s
![Page 258: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/258.jpg)
Beispiel: s = 7 + 1
=
s +
7 1
4, shortvar
7, intval
1, intval
8, intval
8, shortval
=
s +
7 1
8short s
![Page 259: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/259.jpg)
Beispiel: s = 7 + 1
=
s +
7 1
4, shortvar
7, intval
1, intval
8, intval
8, shortval
=
s +
7 1
8short s
compile-time constantexpression
![Page 260: 5.3 Auswertung von Ausdrücken · 2017-05-12 · 5.3 Auswertung von Ausdrücken Assoziativität æ Die Assoziativität entscheidet über die Reihenfolge bei Operatoren gleicher Priorität](https://reader033.vdocuments.net/reader033/viewer/2022053017/5f1af580babeba3ee070fb8f/html5/thumbnails/260.jpg)
Expliziter Typecast
symbol name type L/R level
(type) typecast zahl, char rechts 3
Beispiele mit Datenverlust
ñ short s = ( short ) 23343445;
Die obersten bits werden einfach weggeworfen...
ñdouble d = 1.5;short s = ( short ) d ;
d hat danach den Wert 1.
...ohne Datenverlust:
ñin t x = 5;short s = ( short ) x ;