c++ - einführung in die programmierung · c++ - einführung seite 24 zahlensysteme das...
TRANSCRIPT
![Page 1: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/1.jpg)
Anja Aue | 18.12.2017
C++ - Einführung in die Programmiersprache
„Deklaration von Variablen“
intfloat
6
6.4
char 'a'
6
![Page 2: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/2.jpg)
C++ - Einführung Seite 2
Anweisungen in C++
#include <iostream>
int main(){ int lZahl = 5; int rZahl = 2; std::cout << lZahl << '+' << rZahl; std::cout << " = " << (lZahl + rZahl); std::cout << std::endl; return 0;}
![Page 3: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/3.jpg)
C++ - Einführung Seite 3
Präprozessor-Anweisungen
Beginn mit dem Hash-Zeichen. Pro Zeile eine Anweisung. Das Zeilenende markiert auch das
Ende der Anweisung. Am Anfang der Quelldatei werden alle Präprozessor-
Anweisungen aufgelistet. Der Präprozessor ersetzt die Anweisung durch den
entsprechenden Textabschnitt.
#include <iostream> // Ein- und Ausgabe#include <cmath> // Mathematische Funktionen
![Page 4: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/4.jpg)
C++ - Einführung Seite 4
Codeblöcke in C++
Beginn und Ende mit den geschweiften Klammern. Rumpf einer Funktion wie in diesem Beispiel Zusammenfassung von Anweisungen, die in Abhängigkeit einer
Bedingung ausgeführt oder wiederholt werden.
{ int lZahl = 5; int rZahl = 2; std::cout << lZahl << '+' << rZahl; std::cout << " = " << (lZahl + rZahl); std::cout << std::endl; return 0;}
![Page 5: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/5.jpg)
C++ - Einführung Seite 5
Anweisungen
Die Anweisung endet mit einem Semikolon und nicht mit dem Zeilenende.
Pro Zeile sollte eine Anweisung stehen.
{ int lZahl = 5; int rZahl = 2; std::cout << lZahl << '+' << rZahl; std::cout << " = " << (lZahl + rZahl); std::cout << std::endl; return 0;}
![Page 6: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/6.jpg)
C++ - Einführung Seite 6
Möglichkeiten
const int EXPONENT = 2;Deklarations- anweisungen
int ergebnis;
ergebnis = lZahl + rZahl;
ergebnis = pow(basis, EXPONENT);
std::cout << "3^2 = " << ergebnis;
Ausdrucks- anweisungen
return 0;Sprung-anweisungen
![Page 7: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/7.jpg)
C++ - Einführung Seite 7
Deklarationsanweisungen
Deklaration von Platzhaltern für konstante und variable Werte. Deklarationsanweisungen befinden sich häufig am Anfang
eines Codeblockes. Sie können aber auch an jeder anderen beliebigen Stelle in einem C++-Programm platziert werden.
const int EXPONENT = 2;int ergebnis;int lZahl = 5;int rZahl = 2;
![Page 8: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/8.jpg)
C++ - Einführung Seite 8
Variable Werte
Werte, die sich im Programmablauf ändern.
Zum Beispiel: Berechnungen der Mehrwertsteuer für einen Einkauf, Messwerte in Abhängigkeit der Tageszeit, Anzahl der Waren im Lager.
Variable Werte können Gleitkommazahlen, Ganzzahlen, einzelne Buchstaben etc. sein.
a
0.5
1
true
![Page 9: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/9.jpg)
C++ - Einführung Seite 9
Beispiele in C++
int main () {
bool licht_an = true;double dezimalzahl;
int ganzzahl = 1;char zeichen;
dezimalzahl = ganzzahl / 2;
zeichen = 'A';
return 0;}
![Page 10: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/10.jpg)
C++ - Einführung Seite 10
Variablen in C++
int Datentyp.Wie viel Speicherplatz wird benötigt? Wie groß muss die „Box“ sein?
ganzzahl Name.Wie wird die „Box“ (der Speicherplatz) bezeichnet?
= 1 Wert.Was wird gespeichert?
![Page 11: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/11.jpg)
C++ - Einführung Seite 11
Deklaration
Jede Variablendeklaration beginnt mit der Angabe des Datentyps.
Dem Datentyp folgt ein Bezeichner. Der Bezeichner ist frei wählbar.
float dezimalzahl ;
Datentyp name ;
![Page 12: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/12.jpg)
C++ - Einführung Seite 12
Bezeichner (Variablennamen)
Platzhalter für variable und konstante Werte. Die Namen sind in ihrem Codeblock eindeutig. Schlüsselwörter der Programmiersprache sind als
benutzerdefinierte Namen nicht erlaubt. Unterscheidung zwischen Groß- und Kleinschreibung. Die
Namen „MINZAHL“ und „MINzAHL“ sind unterschiedliche Platzhalter in C++.
![Page 13: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/13.jpg)
C++ - Einführung Seite 13
Erlaubte Zeichen
Buchstaben A...Z und a...z. Zahlen 0...9. Der Unterstrich.
![Page 14: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/14.jpg)
C++ - Einführung Seite 14
Beispiele
radius
menge_pro_artikel
farbe_rgb
PI
BESTELLWERT_MIN
EXPONENT
![Page 15: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/15.jpg)
C++ - Einführung Seite 15
Geeignete Bezeichner
Der Name spiegelt die Nutzung des Bezeichners in dem Code wieder.
Der Bezeichner nutzt den Namen des abgebildeten Objektes aus der Realität.
Die Namen der Platzhalter nutzen eine Sprache. Die Sprachen englisch und deutsch, zum Beispiel, sollten nicht gemischt werden.
Keine kryptischen Bezeichner wie a1, b etc. Bezeichner, die aus einem Buchstaben bestehen, sollten nur für Zähler in einer wiederholten Anweisung genutzt werden.
![Page 16: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/16.jpg)
C++ - Einführung Seite 16
Konventionen für Variablen
Variablen beginnen mit einem Buchstaben. Variablen nutzen Kleinbuchstaben und Zahlen. Als Bezeichner wird häufig ein Substantiv genutzt. Jedes Wort in einem Variablennamen beginnt mit einem
Großbuchstaben. Es wird die Kamel-Notation genutzt. Beispiel: durchschnittstemperaturProMonat, preisProStueck.
![Page 17: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/17.jpg)
C++ - Einführung Seite 17
Informationen in einem Variablennamen
n c menge
Basistyp Präfix Name
Basistyp: Welcher Datentyp wird genutzt? Art des Wertes. Hier: Numerische Ganzzahl.
Präfix: Variablenkategorie. Hier: Die Variable wird als Zähler genutzt.
Bezeichner: Bezeichnung des dargestellten Objekts aus der realen Welt.
![Page 18: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/18.jpg)
C++ - Einführung Seite 18
Beispiele für den Basistyp
n Numerischer ganzzahliger Wert.
u Numerischer ganzzahliger Wert ohne Vorzeichen.
b Boolsche Werte.
f Float. Gleitkommazahl.
ch Char. Ein einzelnes Zeichen.
![Page 19: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/19.jpg)
C++ - Einführung Seite 19
Beispiele für ein Präfix
a Array. Feld.
c Zähler.
p Pointer. Zeiger.
g_ Globale Variable.
![Page 20: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/20.jpg)
C++ - Einführung Seite 20
Datentypen
Baupläne für Platzhalter. Regeln für die Interpretation und Verwendung eines Wertes. Speicherbedarf / Größe eines Wertes.
![Page 21: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/21.jpg)
C++ - Einführung Seite 21
… in C++
int Ganzzahl.
float Dezimal- oder Fließkommazahl.
bool Boolsche Werte.
char Ein einzelnes Zeichen.
1
0.5
true
'a'
![Page 22: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/22.jpg)
C++ - Einführung Seite 22
Datentypen für boolsche Werte
Wahrheitswerte. Annahme von nur zwei Zuständen. true. Wahr. Strom / Licht ist eingeschaltet. Der Wert ist
ungleich 0. false. Falsch. Strom / Licht ist ausgeschaltet. Der Wert ist 0. Häufig werden Adjektive als Bezeichner genutzt.
const bool LICHT_AN = true ;
const bool LICHT_AUS = false ;
![Page 23: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/23.jpg)
C++ - Einführung Seite 23
Ganzzahlen
Zahlen ohne Nachkommastellen. Der Zahlenraum ist endlich. Berechnungen mit ganzen Zahlen sind exakt.
![Page 24: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/24.jpg)
C++ - Einführung Seite 24
Zahlensysteme
Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt.
Das Oktalsystem basiert auf der Zahl 8. Es werden die Ziffern 0 bis 7 genutzt. Zahlen im Oktalsystem haben das Präfix „Null“.
Das Hexadezimalsystem basiert auf der Zahl 16. Es werden die Ziffern 0 bis 9 und die Buchstaben A bis F genutzt. Zahlen im Hexadezimalsystem werden durch 0x gekennzeichnet. Farbcodierungen werden häufig im Hexadezimalsystem dargestellt.
![Page 25: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/25.jpg)
C++ - Einführung Seite 25
Schreibweise
ganzzahl =
ganzzahl =
ganzzahl =
;
;
;
42
052
0x2a
dezimal
oktal
hexadezimal
![Page 26: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/26.jpg)
C++ - Einführung Seite 26
Standard-Datentypen
short ganzzahl
int ganzzahl
long ganzzahl
long long ganzzahl
;
;
;
;
![Page 27: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/27.jpg)
C++ - Einführung Seite 27
Regeln für die Größe
Der Datentyp short ist mindestens 16 Bits groß.
Der Datentyp int ist mindestens genauso groß wie short.
Der Datentyp long ist mindestens genauso groß wie int. long hat mindestens 32 Bits.
Der Datentyp long long ist mindestens genauso groß wie long. long long hat mindestens 64 Bits. Einführung mit C++11.
![Page 28: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/28.jpg)
C++ - Einführung Seite 28
Hinweise zu Literale
Literale werden standardmäßig als Werte vom Datentyp int interpretiert.
Mit Hilfe des Suffix L oder LL wird der gewünschte Datentyp angegeben.
![Page 29: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/29.jpg)
C++ - Einführung Seite 29
Gleitkommazahlen
Darstellung einer reellen Zahl. Repräsentation einer Zahl durch Vorzeichen, Mantisse und
Exponent. Nährung einer Zahl. Der Datentyp gibt die Genauigkeit der
Nährung an. Als Dezimaltrennzeichen wird der Punkt genutzt.
![Page 30: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/30.jpg)
C++ - Einführung Seite 30
… in der Dezimalschreibweise
+ 5 8
- 5 8
8
Als Dezimaltrennzeichen wird immer ein Punkt genutzt.
![Page 31: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/31.jpg)
C++ - Einführung Seite 31
… in der Exponentialschreibweise
+ 5 8 e+ 16
+ 5 8 E+ 16
- 5 8 e- 16
- 5 8 E- 16
Nutzung für extrem kleine oder große Zahlen. Zahlen in der Exponentialschreibweise werden immer als
Gleitkommazahl gespeichert.
![Page 32: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/32.jpg)
C++ - Einführung Seite 32
Hinweise
5.8e+16 (= 5.8 * 1016). Das Dezimaltrennzeichen wird um n Stellen nach rechts verschoben.
5.8e-16 ( = 5.8 / 1016). Das Dezimaltrennzeichen wird um n Stellen nach links verschoben.
![Page 33: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/33.jpg)
C++ - Einführung Seite 33
Datentypen
float wert
double wert
long double wert
;
;
;
![Page 34: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/34.jpg)
C++ - Einführung Seite 34
Regeln
float ist mindestens 32 Bit groß. Der Datentyp hat eine Genauigkeit von ca. 6 Stellen.
double ist mindestens genauso groß wie float, aber mindestens 48 Bits. Der Datentyp hat eine Genauigkeit von ca. 15 Stellen.
long double ist mindestens genauso groß wie double.
![Page 35: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/35.jpg)
C++ - Einführung Seite 35
Hinweise zu Literale
Literale werden standardmäßig als Werte vom Datentyp double interpretiert.
Mit Hilfe des Suffix L und F wird der gewünschte Datentyp angegeben.
![Page 36: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/36.jpg)
C++ - Einführung Seite 36
Wert einer deklarierten Variablen
Undefinierter Wert entsprechend des Datentyps. Die Variable wird mit einem beliebigen Wert initialisiert.
float dezimalzahl ;
Datentyp name ;
![Page 37: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/37.jpg)
C++ - Einführung Seite 37
1. Möglichkeit
Im ersten Schritt wird die Variable deklariert. Im zweiten Schritt wird der Variablen ein definierter Wert
entsprechend des Datentyps zugewiesen. Der Zuweisungsoperator wird durch das Gleichheitszeichen dargestellt.
char zeichen; zeichen = 'A';
![Page 38: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/38.jpg)
C++ - Einführung Seite 38
Zuweisungsoperator
Rechts vom Gleichheitszeichen wird der zu speichernde Wert berechnet oder direkt angegeben. Der Wert soll im Stack gespeichert werden.
Links vom Gleichheitszeichen steht der Name einer Variablen. Der Name ist ein Platzhalter für die Speicherstelle des variablen Wertes.
Hinweis: Links vom Gleichheitszeichen stehen nie Konstanten.
variable = wert ;
variable = ausdruck ;
![Page 39: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/39.jpg)
C++ - Einführung Seite 39
2. Möglichkeit
Variablen können wie Konstanten gleichzeitig deklariert und initialisiert werden.
char zeichen = 'A';
![Page 40: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/40.jpg)
C++ - Einführung Seite 40
Deklaration und Initialisierung
float dezimalzahl =
Datentyp name =
0.5
wert
;
;
Deklaration Initialisierung
![Page 41: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/41.jpg)
C++ - Einführung Seite 41
Beispiele für Initialisierungswerte
bool licht = false; double wert = 0.0; int zahl = 0;
![Page 42: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/42.jpg)
C++ - Einführung Seite 42
… seit C++11
float dezimalzahl =
Datentyp name =
0.5
wert
}
}
{
{
;
;
float dezimalzahl
Datentyp name
0.5
wert
}
}
{
{
;
;
![Page 43: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/43.jpg)
C++ - Einführung Seite 43
Beispiele für eine Initialisierungsliste
Die Initialisierungsliste beginnt und endet mit den geschweiften Klammern.
Bei Variablen hat die Initialisierungsliste immer nur ein Wert. Zwischen dem Bezeichner und der Initialisierungsliste kann ein
Gleichheitszeichen stehen, muss aber nicht.
bool licht = {false}; double wert = {0.0}; int zahl = {0};
![Page 44: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/44.jpg)
C++ - Einführung Seite 44
Speicherbedarf einer Variablen
Festlegung durch den Datentyp. Der Speicherbedarf ist abhängig von dem implementierten
Betriebssystems.
![Page 45: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/45.jpg)
C++ - Einführung Seite 45
Beispiel: Speicherbedarf bei 32-Bit-System
00401000
00401004
00401008
0040100C
00401010
blau
32………….……….........0
orange
rot
gr
1 Byte
Ein 32-Bit Wort
long, 32 Bit
float, 32 Bit
int, 16 Bit
char, 8 Bit
Speicheradressen(hexadezimal)
![Page 46: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/46.jpg)
C++ - Einführung Seite 46
Ermittlung des Speicherbedarfs
std::cout << "Speicherbedarf der Datentypen (Ganzzahlen):";std::cout << "\n short: " << sizeof (short) << " Bytes";std::cout << "\n int: " << sizeof (int) << " Bytes";std::cout << "\n long: " << sizeof (long) << " Bytes";std::cout << "\n long long: " << sizeof (long long) << " Bytes";std::cout << std::endl;
std::cout << "\nSpeicherbedarf der Datentypen (Gleitkommazahlen):";
std::cout << "\n float: " << sizeof (float) << " Bytes";std::cout << "\n double: " << sizeof (double) << " Bytes";std::cout << "\n long double: " << sizeof (long double) << " Bytes";std::cout << std::endl;
![Page 47: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/47.jpg)
C++ - Einführung Seite 47
Nutzung von sizeof()
Mit Hilfe der Funktion sizeof() wird die Größe einer Variablen oder eines bestimmten Datentyps in Bytes ermittelt.
sizeof int( )
sizeof Parameter( )
![Page 48: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/48.jpg)
C++ - Einführung Seite 48
Bytes
1 Byte besteht aus 8 Bits. Darstellung von bis 256 (28) verschiedenen Zustände. Codierung von Buchstaben und Zahlen.
![Page 49: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/49.jpg)
C++ - Einführung Seite 49
Bit
Kleinste Informationseinheit. Darstellung eines Zustandes: Strom eingeschaltet oder
ausgeschaltet. Binärziffer 1 oder 0.
![Page 50: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/50.jpg)
C++ - Einführung Seite 50
Wertebereich einer Variablen
Festlegung durch den Datentyp. Der Wertebereich wird durch die Größe des genutzten
Speichers beeinflusst. Es gibt nur Regeln, aber keine festen Wertebereiche.
![Page 51: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/51.jpg)
C++ - Einführung Seite 51
Wertebereich eines Datentyps
std::cout << "Wertebereich der Datentypen (Ganzzahlen):"; std::cout << "\n short: " << std::numeric_limits<short>::min()
<< " - " << std::numeric_limits<short>::max(); std::cout << "\n int: " << std::numeric_limits<int>::min()
<< " - " << std::numeric_limits<int>::max(); std::cout << "\n long: " << std::numeric_limits<long>::min()
<< " - " << std::numeric_limits<long>::max(); std::cout << "\n long long: " << std::numeric_limits<long long>::min()
<< " - " << std::numeric_limits<long long>::max(); std::cout << std::endl;
std::cout << "\nWertebereich der Datentypen (Gleitkommazahlen):";
std::cout << "\n float: " << std::numeric_limits<float>::min() << " - " << std::numeric_limits<float>::max();
std::cout << "\n double: " << std::numeric_limits<double>::min() << " - " << std::numeric_limits<double>::max();
std::cout << "\n long double: " << std::numeric_limits<long double>::min() << " - " << std::numeric_limits<long double>::max();
std::cout << std::endl;
![Page 52: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/52.jpg)
C++ - Einführung Seite 52
Template „numeric_limits“
Die Vorlage numeric_limits ist in der Standard-Bibliothek <limits> definiert.
Die Vorlage ermittelt den Wertebereich eines numerischen Datentyps.
Templates ermöglichen eine generische Programmierung unabhängig vom Datentyp.
numeric_limits int< >
template datentyp< >
![Page 53: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/53.jpg)
C++ - Einführung Seite 53
… wird angewendet auf
In spitzen Klammern wird der gewünschte Datentyp angegeben.
In diesem Beispiel wird die Vorlage auf den Datentyp int angewendet. Für diesen Datentyp werden die, in dem Template vorhandenen Methoden generiert.
numeric_limits int< >
template datentyp< >
![Page 54: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/54.jpg)
C++ - Einführung Seite 54
Methode eines Templates
Methoden beschreiben eine Handlung in einer Programmiersprache. In diesem Beispiel „Gibt den minimalen Wert“ (min) zurück.
Die Methode wird wie eine Funktion mit Hilfe ihres Namens aufgerufen.
Dem Namen folgt die Parameterliste. Die runden Klammern enthalten keinen Parameter. Der Methode wird kein Parameter übergeben. Die Parameterliste ist leer.
numeric_limits int< min> :: ( )
template datentyp< methode> :: ( )
![Page 55: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/55.jpg)
C++ - Einführung Seite 55
… definiert in der Vorlage
Die Methode und die Vorlage werden mit dem Operator :: verbunden.
Der Qualifizierungsoperator wird aus zwei Doppelpunkten zusammengesetzt.
Links vom Operator wird der Name des Templates angegeben. Rechts vom Operator die Methode, die in dem angegebenen Template definiert ist.
numeric_limits int< min> :: ( )
template datentyp< methode> :: ( )
![Page 56: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/56.jpg)
C++ - Einführung Seite 56
Nutzung der C-Bibliothek
#include <climits>
int main () { cout << "\n\nWertebereich der Datentypen:\n"; cout << "\n... short: " << SHRT_MIN << "..." << SHRT_MAX;
Die Bibliothek climits muss am Anfang des Programms eingebunden werden.
In der Bibliothek sind Konstanten für die Grenzen des Wertebereiches eines Datentyps definiert.
Siehe: http://en.cppreference.com/w/cpp/header/climits.
![Page 57: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/57.jpg)
C++ - Einführung Seite 57
Mögliche Fehlermeldung
char zeichen01 = 999;char zeichen02 = {999};
In Abhängigkeit des verwendeten Compilers und der Compiler-Version.
Die erste Anweisung erzeugt zum Beispiel eine Warnung „warning: overflow in implicit constant conversion“.
Die zweite Anweisung erzeugt zum Beispiel den Fehler „error: narrowing conversion of '999' from 'int' to 'char'“.
In beiden Fällen ist der mögliche Bereich eines Zeichens (char) überschritten.
![Page 58: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/58.jpg)
C++ - Einführung Seite 58
Vorzeichenbehaftete Ganzzahlen
int main () { signed short nZahlMitVorzeichen;
Vorzeichenbehaftete (signed) Zahlen. Zahlen vom Typ int, long, short und char können positiv
oder negativ sein. Ein Überschreiten des Wertebereichs wird nicht als Fehler oder
Ausnahme gemeldet.
![Page 59: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/59.jpg)
C++ - Einführung Seite 59
Arithmetischer Überlauf bei signed
signed short
+16384-16384
0
-32768 +32768
-1 +1
+1
![Page 60: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/60.jpg)
C++ - Einführung Seite 60
Vorzeichenlose Ganzzahlen
int main () { unsigned short nWertMitVorzeichen;
Vorzeichenlose (unsigned) Zahlen. Zahlen vom Typ int, long, short und char können nur
positive Zahlen speichern. Werte vom Typ char und binäre Werte sind Beispiele für
vorzeichenlose Ganzzahlen. Ein Überschreiten des Wertebereichs wird nicht als Fehler oder
Ausnahme gemeldet.
![Page 61: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/61.jpg)
C++ - Einführung Seite 61
Arithmetischer Überlauf bei unsigned
unsigned short
+16384+49152
0
+32768 +32767
+65535 +1
+1
![Page 62: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/62.jpg)
C++ - Einführung Seite 62
Genauigkeit einer Gleitkommazahl
#include <limits>
int main () { cout << "Genauigkeit der Datentypen:\n"; cout << "\nfloat: " << numeric_limits<float>::digits10; cout << "\ndouble: " << numeric_limits<double>::digits10; return 0;}
![Page 63: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/63.jpg)
C++ - Einführung Seite 63
Template „numeric_limits“
Die Vorlage numeric_limits ist in der Standard-Bibliothek <limits> definiert.
Die Vorlage ermittelt den Wertebereich eines numerischen Datentyps.
Templates ermöglichen eine generische Programmierung unabhängig vom Datentyp.
numeric_limits int< >
template datentyp< >
![Page 64: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/64.jpg)
C++ - Einführung Seite 64
… wird angewendet auf
In spitzen Klammern wird der gewünschte Datentyp angegeben.
In diesem Beispiel wird die Vorlage auf den Datentyp int angewendet. Für diesen Datentyp werden die, in dem Template vorhandenen Methoden generiert.
numeric_limits int< >
template datentyp< >
![Page 65: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/65.jpg)
C++ - Einführung Seite 65
Methode eines Templates
Methoden sind vordefinierte Codeblöcke. In diesem Beispiel werden Anweisungen für „Berechne die Genauigkeit einer Zahl aus dem Dezimalsystem“ (digits10) zusammengefasst.
Die Methode wird wie eine Funktion mit Hilfe ihres Namens aufgerufen. Die Groß- und Kleinschreibung wird beachtet.
Dem Namen folgt die Parameterliste. Die runden Klammern enthalten keinen Parameter. Es werden keine Parameter als Startwerte übergeben.
numeric_limits int< digits10> :: ( )
template datentyp< methode> :: ( )
![Page 66: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/66.jpg)
C++ - Einführung Seite 66
… definiert in der Vorlage
Die Methode und die Vorlage werden mit dem Operator :: verbunden.
Der Qualifizierungsoperator wird aus zwei Doppelpunkten zusammengesetzt.
Links vom Operator wird der Name des Templates angegeben. Rechts vom Operator die Methode, die in dem angegebenen Template definiert ist.
numeric_limits int< > ::
template datentyp< > ::
digits10 ( )
methode ( )
![Page 67: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/67.jpg)
C++ - Einführung Seite 67
Alphanumerische und numerische Zeichen
Die kleinste Einheit eines Textes. Speicherung eines Zeichens entsprechend seiner Kodierung.
Zum Beispiel kann das alphanumerische Zeichen a gespeichert werden.
Escape-Sequenzen wie '\n' für einen Zeilenumbruch. Escape-Zeichen maskieren mit Hilfe des Backslash ein Zeichen aus dem Alphabet.
![Page 68: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/68.jpg)
C++ - Einführung Seite 68
Datentyp char
Standard-Datentyp. Beginn und Ende immer mit dem Apostroph. Numerische Zeichen vom Datentyp char können nicht in
Berechnungen genutzt werden. Ein Apostroph muss maskiert werden ('\'').
const char zeichen = 'a' ;
const bool sonder = '\n' ;
![Page 69: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/69.jpg)
C++ - Einführung Seite 69
Codierung von Zeichen
char zeichen; zeichen = 'A';zeichen = 65;
Jedes Zeichen vom Typ char wird mit Hilfe einer Zeichentabelle codiert.
Für jedes Zeichen wird durch einen eindeutigen Integer-Wert in der Zeichentabelle identifiziert.
Standardmäßig werden die Zeichen mit Hilfe des ASCII-Zeichensatz codiert.
![Page 70: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/70.jpg)
Java – Einführung in die Programmierung Seite 70
ASCII-Zeichensatz
American Standard Code for Information Interchange. Definition von 128 Zeichen. Umlaute wie ä, ö, ü oder Sonderzeichen wie zum Beispiel das
Euro-Zeichen sind in diesem Zeichensatz nicht vorhanden. Siehe http://www.torsten-horn.de/techdocs/ascii.htm
![Page 71: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/71.jpg)
Java – Einführung in die Programmierung Seite 71
„Maskierung“ von Zeichen
Escape-Sequenzen. Zeichen, die eine besondere Bedeutung in der
Programmiersprache oder für den Compiler haben, werden maskiert.
Dem Apostroph am Anfang folgt ein Schrägstrich. Mit Hilfe des Schrägstriches wird das nachfolgende Zeichen maskiert.
char unicode = = '\u0041';char newLine = '\n';
![Page 72: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/72.jpg)
Java – Einführung in die Programmierung Seite 72
Escape-Sequenzen
Steuerzeichen für den Drucker etc. Nicht druckbare Zeichen eines Zeichensatzes. Maskierung von Zeichen, die in C++ in einer besonderen
Funktion genutzt werden. Nutzung des Unicode-Zeichensatzes.
char newLine = '\n';char apostroph = '\'';
![Page 73: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/73.jpg)
Java – Einführung in die Programmierung Seite 73
Möglichkeiten
Escape-Sequenz Beschreibung
\b Rückschritt (Backspace)
\t Tabulator
\v Vertikaler Tabulator
\n Zeilenumbruch (Newline)
\r Wagenrücklauf. (Carriage Return)
\a Alarm.
\? Fragezeichen
\" Anführungszeichen
\' Apostroph
\\ Backslash
![Page 74: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/74.jpg)
Java – Einführung in die Programmierung Seite 74
Leeres Zeichen
Zwei direkt aufeinanderfolgende Apostrophe erzeugen die Fehlermeldung „empty character constant“.
Um ein leeres Zeichen abzubilden, wird häufig die maskierte 0 oder das Leerzeichen genutzt.
Das Zeichen \0 terminiert einen String.
const char null = '\0';const char space = ' ';
![Page 75: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/75.jpg)
Java – Einführung in die Programmierung Seite 75
Ausgabe von Variablen
cout gibt Variablen, Konstanten etc. auf der Standardausgabe aus.
Der Befehl ist in der Bibliothek iostream definiert. Durch die Präprozessor-Anweisung #include <iostream> wird die Bibliothek eingebunden.
Die Standardausgabe ist im Standard-Namensraum std abgelegt. Der Namensraum wird mit der Standardausgabe durch die zwei aufeinanderfolgenden Doppelpunkten verbunden.
std::cout << lZahl << '+' << rZahl;std::cout << " = " << (lZahl + rZahl);
![Page 76: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/76.jpg)
Java – Einführung in die Programmierung Seite 76
Umleitungsoperator
Zwei direkt aufeinanderfolgende Kleiner-Zeichen. Die Pfeilspitze zeigt die Richtung der der Umleitung an. Der Umleitungsoperator kann beliebig oft in einer Zeile genutzt
werden.
std::cout << lZahl << '+' << rZahl;std::cout << " = " << (lZahl + rZahl);
![Page 77: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/77.jpg)
Java – Einführung in die Programmierung Seite 77
Standardausgabe
Als Standardausgabe wird eine Konsole, Terminal oder Shell genutzt.
Unter dem Betriebssystem Windows wird häufig die MS DOS Eingabeaufforderung genutzt.
std::cout << '\n' << intRWert;std::cout << "\n Unicode 16 Bit: " << u16;
![Page 78: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/78.jpg)
Java – Einführung in die Programmierung Seite 78
Hinweise zur MS DOS Eingabeaufforderung
Der Befehl dir listet alle Elemente in einem Ordner auf.
Mit Hilfe von cd kann der Ordner gewechselt werden. cd codelite wechselt in den Ordner codelite in dem angegebenen Ordnern. cd .. geht einen Ordner nach oben.
Der Befehl cmd.exe /k chcp 1252 öffnet die Eingabeaufforderung mit der Codepage 1252
Der Befehl chcp 65001 ändert die Codepage der aktuellen Eingabeaufforderung.
Liste von Codepages: https://docs.microsoft.com/de-de/windows/desktop/Intl/code-page-identifiers
![Page 79: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/79.jpg)
Java – Einführung in die Programmierung Seite 79
Neue Zeile in der Konsole
Die Escape-Sequenz \n erzeugt einen Zeilenumbruch.
In der Bibliothek iostream ist die Konstante endl im Standard-Namensraum definiert. Die Konstante erzeugt einen Zeilenumbruch und erzwingt eine Ausgabe in der Konsole.
const char newline = '\n';std::cout << std::endl;
![Page 80: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/80.jpg)
Java – Einführung in die Programmierung Seite 80
Unicode-Zeichen
Maskierung mit \u. Angabe als Hexadezimal-Wert. Das erste Zeichen im Unicode-Zeichensatz wird
folgendermaßen kodiert: '\u0000'. Unicode-Zeichen können die Warnung multi-character
character constant auslösen. Das Unicode-Zeichen wird nicht als ein Zeichen interpretiert.
char unicode = = '\u0041'; char zeichen = '\u02C3';
![Page 81: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/81.jpg)
Java – Einführung in die Programmierung Seite 81
Unicode-Zeichensatz
Das erste Zeichen im Zeichensatz wird mit Hilfe von '\u0000' angegeben.
Die ersten 127 Zeichen des UTF-8-Zeichensatzes sind mit dem ASCII-Zeichensatz identisch.
Die ersten 256 Zeichen des UTF-8-Zeichensatzes entsprechen dem ISO 8859-1 (Latin 1)-Zeichensatz.
Siehe https://unicode-table.com/de/.
![Page 82: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/82.jpg)
C++ - Einführung Seite 82
Datentyp char16_t
char16_t u16; u16 = u'A';cout << "\n Unicode (Character) 16 Bit: " << u16;u16 = u'\u0041';cout << "\n Unicode 16 Bit: " << u16;
Das Zeichen benötigt 16 Bit zur Speicherung. Jedes Zeichen hat das Präfix u.
![Page 83: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/83.jpg)
C++ - Einführung Seite 83
Datentyp char32_t
char32_t u32;
u32 = U'@';
std::cout << "\n Unicode (Codierung): " << u32; std::cout << "\n Unicode (Character): " << (char)u32;
Das Zeichen benötigt 32 Bit zur Speicherung. Jedes Zeichen hat das Präfix U.
![Page 84: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/84.jpg)
C++ - Einführung Seite 84
… in der Konsole ausgeben
char32_t u32;
u32 = U'@';
std::cout << "\n Unicode (Codierung): " << u32; std::cout << "\n Unicode (Character): " << (char)u32;
Standardmäßig wird die Codierung des Unicode-Zeichens in der Konsole ausgegeben.
Durch die Angabe (char) wird die Codierung in das entsprechende Zeichen konvertiert.
![Page 85: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/85.jpg)
C++ - Einführung Seite 85
Wide character type
wchar_t zeichenLocal; zeichenLocal = L'\u0041';zeichenLocal = L'A';
Keine festgelegte Länge. Jedes Zeichen hat das Präfix L.
Abbildung von länderspezifischen Zeichen.
![Page 86: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/86.jpg)
C++ - Einführung Seite 86
… auf der Konsole ausgeben
wchar_t zeichenLocal; zeichenLocal = L'A'; std::cout << "\n wchar_t: " << zeichenLocal; std::wcout << "\n wchar_t (Zeichen): " << zeichenLocal;
Mit Hilfe von cout wird die Codierung des Zeichens entsprechend der länderspezifischen Einstellung in der Konsole ausgegeben.
Mit Hilfe von wcout wird das Zeichen entsprechend der länderspezifischen Einstellung in der Konsole ausgegeben.
![Page 87: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/87.jpg)
C++ - Einführung Seite 87
Eingabegebietsschema
std::cout << "\n Schema: " << std::setlocale(LC_ALL, "");
setlocale gibt das aktuelle Eingabegebietsschema zurück oder legt dieses fest.
Die Methode setlocale ist in der Bibliothek locale definiert.
Die Methode ist im Standardnamensraum abgelegt. Der erste Parameter legt die Kategorie des Schemas fest. Der zweite Parameter definiert das gewünschte Schema..
![Page 88: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/88.jpg)
C++ - Einführung Seite 88
Kategorie LC_ALL
std::cout << "\n Schema: " << std::setlocale(LC_ALL, "");
Das Makro LC_ALL gibt das aktuell genutzte Schema von C++ zurück.
Der zweite Parameter muss ein leerer String (zwei aufeinanderfolgende Anführungszeichen) sein.
![Page 89: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/89.jpg)
C++ - Einführung Seite 89
Kategorie LC_CTYPE
std::setlocale(LC_CTYPE,"de_DE.utf8");
Das Makro LC_CTYPE legt das aktuelle Schema für Zeichen fest.
Der zweite Parameter gibt das Schema an. In diesem Beispiel wird Unicode 8 aus dem deutschsprachigen Raum genutzt.
Die Namen der Schemata werden durch die Anführungszeichen begrenzt.
Hinweis: Die Namen der Schemata sind nicht normiert.
![Page 90: C++ - Einführung in die Programmierung · C++ - Einführung Seite 24 Zahlensysteme Das Dezimalsystem basiert auf der Zahl 10. Es werden die Ziffern 0 bis 9 genutzt. Das Oktalsystem](https://reader031.vdokument.com/reader031/viewer/2022011819/5e9b10d65c05bc158331c7ba/html5/thumbnails/90.jpg)
C++ - Einführung Seite 90
Nutzung eines Strings
char zeichen; zeichen = 'A';cout << "\n ASCII-Zeichen: " << zeichen;
Strings sind Zeichenketten aus beliebig vielen numerischen und alphanumerischen Zeichen.
Beginn und Ende mit Hilfe des Anführungszeichens. Strings werden nicht über einen Standard-Datentyp definiert.