Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Hertha Siegel Geändert vor über 7 Jahren
1
Variablen und Operatoren
2
C++ Teil 2: Grundstrukturen Variablen Operatoren Kontrollstrukturen Funktionen Header-Dateien Pointer und Referenzen
3
Variablen Deklaration und Definition [qualifier] variabletyp variablename; explizite Deklaration mittels extern Initialisierung und Zuweisung variablenname = wert; kann gleichzeitig mit Definition geschehen implizite Initialisierung (außer bei lokalen Variablen!) Variablennamen darf nicht mit einer Zahl beginnen darf keinem reservierten Schlüsselwort entsprechen
4
Primitive Datentypen TypEigenschaften charCharacter (Zeichen), nimmt ein 8 Bit Zeichen auf wchar_twide Character, nimmt ein (mindestens) 16 Bit Zeichen auf boolWahrheitswert, kann die Werte true oder false annehmen intGanzzahl, Größe abhängig von der ausführenden Maschine (üblicherweise 32 Bit) long„größere“ Ganzzahl floatGleitkommazahl einfacher Genauigkeit doubleGleitkommazahl mit doppelter Genauigkeit QualifiziererEigenschaftenAnwendung signedvorzeichenbehaftet (Standard)int, char unsignednicht vorzeichenbehaftetint, char shortkurzint longlangint, long, double
5
sizeof() Vorgriff auf Funktionen sizeof(datenTyp) liefert die Speichergröße von datenTyp in Byte cout << sizeof(bool) << endl; << kann verkettet verwendet werden endl ist eine Konstante aus iostream und bewirkt einen Zeilenumbruch gefolgt von einem flush
6
Aufgabe 2 Benutze die Funktion sizeof um die Byte-Größe der primitiven Datentypen auf dem Bildschirm auszugeben cout << sizeof(bool) << endl;
7
Konstanten Schlüsselwort const const int counter = 100; „konstante Variable“ Schlüsselwort #define #define counter 10 Textersetzung durch den Präprozessor keine Typisierung, kein Speicherplatz Schlüsselwort enum Aufzählungskonstante enum Farbe {Rot, Gruen, Gelb, Ultraschwarz}; Farbe meineFarbe = Gruen;
8
Statische Arrays indizierbares Feld von Daten des gleichen Typs char myCharArray[Anzahl] Zugriff über Indizes 0..Anzahl-1 keine Gültigkeitsprüfung des Indizes zur Laufzeit! teilweise explizite Initialisierung möglich ○ int myIntArray[5] = {1, 2, 3} ○ => 1 2 3 0 0
9
Aufgabe 3 Persönliche Begrüßung cin >> Variable;
10
Mehrdimensionale statische Arrays // Implizit initialisierte Matrix int matrix_1[2][3]; // Explizit initialisierte Matrix int matrix_2[2][3] = { { 1, 2, 3 }, { 4, 5, 6 } }; // Zugriff int meinWert = matrix_2[0][1];
11
Structures Zusammenfassung mehrerer Elemente unterschiedlichen Typs quasi einfache Klassen Explizite Deklaration notwendig Definition einer Variablen der Struktur Zugriff auf Elemente über den Punkt- Operator
12
Structures // Deklaration eines structs struct structName { type elementVarName; … }; // Definition einer Variablen structName structVar; // Benutzung der Variablen cout << structVar.elementVarName;
13
Operatoren in C++ x = (wert1 * wert2) + (wert 3 / (wert4 - wert5)) Auswertung von Operatoren Precedence und Order of Precedence bei gleicher Precedence von links nach rechts Verwendung von Klammern zur Beeinflussung des Auswertungsranges ○ Paare von Klammern in beliebiger Schachtelungstiefe ○ Auswertung von Innen nach Außen ○ lieber zu viele Klammern als zu wenige
14
Order of Precedence (Auswahl) Prec.BedeutungOperator in C++ 2runtime-checked castdynamic_cast (expr) 3unary minus-expr 3pre increment++lvalue 5multiplyexpr * expr 6addexpr + expr 7bit shift rightexpr >> expr 8less thanexpr < expr 9equalexpr == expr 10bitwise ANDexpr & expr 13logical ANDexpr && expr 16asignlvalue = expr
15
Arithmetische Operatoren - binär Standardrechenoperationen: +, -, *, / Modulo (Rest einer ganzzahligen Division) % für alle Datentypen definiert (Modulo nur für Ganzzahlen) bei Typenmischung Umwandlung in den mächtigeren Datentyp lvalue = expr expr
16
Arithmetische Operatoren - unär Vorzeichen: -, + pre increment/decrement ++lvalue --lvalue post increment/decrement lvalue++ lvalue-- var1 = var2++; var1 = ++var2;
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.