C Control PRO STARTER SET MEGA 128 198484 Benutzerhandbuch

Produktcode
198484
Seite von 200
79
Compiler
© 2005 Conrad Electronic
5.2.5
Operatoren
Prioritäten von Operatoren
Operatoren teilen arithmetische Ausdrücke in Teilausdrücke. Die Operatoren werden dann in der
Reihenfolge ihrer Priorität (Präzedenz) ausgewertet. Ausdrücke mit Operatoren von gleicher
Präzedenz werden von links nach rechts berechnet. Beispiel:
i= 
2
+
3
*
4
-
5
;  
// Ergebnis 9 => erst 3*4, dann +2 danach -5
Mann kann die Reihenfolge der Abarbeitung beinflußen, in dem man Klammern setzt. Klammern
haben die größte Priorität. Möchte man das letzte Beispiel strikt von links nach rechts auswerten:
i= (
2
+
3
)*
4
-
5
;  
// Ergebnis 15 => erst 2+3, dann *4, danach -5
.
5.2.5.1
Arithmetische Operatoren
Alle arithmetischen Operatoren, mit Ausnahme von Modulo, sind für Integer und Fließkomma
Datentypen definiert. Nur Modulo ist auf einen Integerdatentyp beschränkt.
 Es ist zu beachten, daß in einem Ausdruck die Zahl 
einen Integer Datentyp zugewiesen
bekommt. Möchte man explizit eine Zahl vom Datentyp float erzeugen, so ist ein Dezimalpunkt
einzufügen: 
7.0
Operator
 Erklärung
Beispiel
Ergebnis
+
 Addition
2+1
3.2 + 4
3
7.2
-
 Subtraktion
2 - 3
22 - 1.1e1
-1
11
*
 Multiplikation
5 * 4
20
/
 Division
7 / 2
7.0 / 2
3
3.5
%
 Modulo
15 % 4
17 % 2
3
1
-
 negatives Vorzeichen
-(2+2)
-4
5.2.5.2
Bitoperatoren
Bitoperatoren sind nur für Integer Datentypen erlaubt.
Operator  Erklärung
Beispiel
Ergebnis
&
 Und
0x0f & 3
0xf0 & 0x0f
3
0
|
 Oder
1 | 3
0xf0 | 0x0f
3
0xff