Operatoren
a) Vergleichsoperatoren
- jeder Vergleich in C ist ein Ausdruck vom Typ int, der den Wert 1 oder 0 besitzt. Hierbei entspricht 1 „wahr“ und 0 „falsch“, d.h. der Vergleich „trifft zu“(1) oder der Vergleich „trifft nicht zu“(0) Bsp.: a=b=10; a= = b
Der Vergleich ist hier wahr und der Ausdruck hat den Wert 1. Lautet der Vergleich dagegen a<b, ist die Relation falsch und der Ausdruck hat den Wert 0. Vergleichsoperatoren haben gegenüber den arithm. Operatoren Vorrang. Deshalb wird bei b<c+5 zuerst c+5 berechnet und das Ergebnis dieses Ausdrucks dann erst mit b verglichen.
ACHTUNG: Verwenden Sie nicht den Zuweisungsoperator (0), wenn Sie einen Vergleich auf Gleichheit (= =) durchführen wollen.
b) Logische Operatoren
- Die logischen (booleschen) Operatoren sind die Operatoren && (UND); ||(ODER);!(NICHT)
Hiermit werden zusammengesetzte Bedingungen formuliert und es können Programmverzweigungen von ihnen abhängig gemacht werden.
Wie ein Vergleichsoperatorausdruck liefert ein log. Ausdruck den int. Wert 1 (wahr) oder 0 (falsch)
Die Operanden können beliebige Ausdrücke sein.
Allgemein wird das Ergebnis eines Operanden als „falsch“ angesehen, wenn sein Wert 0 ist und als „wahr“, wen sein Ergebnis einen von 0 verschiedenen Wert annimmt.
Der ODER-Operator (||) liefert genau dann den Wert 1 (wahr), wenn mind. ein Operand wahr ist.
Bsp.: a<5 || b>10
Ist der Gesamtausdruck 1 (wahr), wenn der Ausdruck a<5 wahr ist oder b>10 wahr ist oder natürlich beide.
Da die Assoziativität dieses Operators „von links her“ stattfindet, ist der Gesamtausdruck bereits 1(wahr), wenn der Wert des linken Ausdrucks 1 (wahr) ist. Eine Überprüfung des rechten Ausdrucks findet somit nicht mehr statt.
Der UND-Operator (&&) liefert genau dann den Wert 1 (wahr), wenn beide Operanden wahr sind. Im Bsp.: a<5 && b>10 ist der Gesamtausdruck erst 1 (wahr) wenn der Ausdruck a<5 wahr ist und der Ausdruck b>10 wahr ist.
Die Assoziativität dieses Operators findet ebensfalls von links statt. Ist schon der Wert des linken Ausdrucks 0 (falsch), kann der Wert des Gesamtausdrucks nicht mehr wahr werden und eine Überprüfung des rechten Operanden erübrigt sich auch hier.
|