Kapitel 8 Operatoren
Zum Berechnen und Weiterverarbeiten von Variableninhalten gibt es viele Operatoren in C. Im Folgenden wird die Verwendung solcher Operatoren besprochen.
8.1 Exkurs zu Operatoren
Damit auch Nicht-Mathematiker oder Hobby-Programmierer verstehen, wie sich Operatoren unterscheiden, hierzu ein kleiner Exkurs. Operatoren werden hinsichtlich der Zahl ihrer Operanden unterschieden:
|
unär – der Operator hat einen Operanden. |
|
binär – der Operator hat zwei Operanden. |
|
ternär – der Operator hat drei Operanden. |
In C werden Sie vorwiegend mit unären und binären Operatoren arbeiten. Es gibt aber auch einen tenären Operator. Des Weiteren wird unterschieden, welche Position der Operator einnimmt:
|
Infix – der Operator steht zwischen den Operanden. |
|
Präfix – der Operator steht vor den Operanden. |
|
Postfix – der Operator steht hinter den Operanden. |
Vorwiegend werden Sie es mit der Infix-Schreibweise zu tun haben. Einige unäre Operatoren können sowohl in der Präfix- als auch in der Postfix-Schreibweise verwendet werden. Und schließlich werden die Operatoren noch hinsichtlich der Assoziativität differenziert. Als Assoziativität wird die Auswertungsreihenfolge bezeichnet, in der Operanden in einem Ausdruck ausgewertet werden. Dabei gibt es folgende Assoziativitäten der Operatoren:
|
Linksassoziativität |
|
Rechtsassoziativität |
Der Großteil der Operatoren in C ist linksassoziativ. Das bedeutet z.B. bei folgendem Ausdruck
var1 + var2 – var3;
wird zuerst var1 mit var2 addiert und die Summe anschließend wird var3 von der Summe subtrahiert. Wären die Operatoren rechtsassoziativ, würde zuerst var2 mit var3 subtrahiert und danach erst mit var1 addiert. Ist dies erwünscht, müssen Klammern gesetzt werden:
var1 + (var2 – var3);
Nachdem diese sprachlichen Stolpersteine beseitigt sind, können Sie sich mit den einzelnen Operatoren in der Programmiersprache C befassen.
|