====== 6.8.5) Ein- und Ausgabe ====== ===== Ausgabestrom nach cout ===== C++ verwendet für die **Ein- und Ausgabe** das **Datenstrom-Modell**. Der Datenstrom zur Ein- und Ausgabe wird in einer **eigenen Bibliothek (iostream)** behandelt. Um sie zu verwenden, muss vor der ersten Verwendung die folgende Zeile eingegeben werden: #include In einigen Listings werden Sie auch sehen, dass iostream ohne die Erweiterung .h verwendet wird. Wenn Sie einen halbwegs aktuellen Compiler verwenden, ist beides möglich. Der Unterschied hat mit der Verwendung von Namensräumen zu tun. Um Daten anzuzeigen, werden sie auf die **Datenausgabe cout** (Das »out« in cout ist englisch und bedeutet »aus«). Zunächst wird das Datenziel genannt. Dann werden zwei **Kleiner-Zeichen** verwendet, um die **Richtung der Daten** in Richtung der Ausgabe anzuzeigen. cout << MeinZahlenWert; cout << endl; Im Beispiel wird die **Variable MeinZahlenWert ausgegeben**. In der Zeile darunter wird **endl** auf den Datenstrom gesendet. Dies ist keine selbst definierte Variable, sondern eine **vordefinierte Konstante für das Zeilenende**. Die Verwendung von endl sorgt auch dafür, dass alle anzuzeigenden Daten sofort auf dem Bildschirm erscheinen. ==== Kaskadierung ==== Der Übersicht halber oder um sich Tipparbeit zu sparen, können mehrere Ausgabeobjekte direkt hintereinander, durch die doppelten Kleiner-Zeichen getrennt, aufgeführt werden. cout << MeinZahlenWert << endl; ==== Textausgabe ==== Sie können nicht nur Variablen, sondern auch **Konstanten (Text)** auf diesem Weg ausgeben. Das ist besonders interessant bei Zeichenketten, mit denen Sie Ihren Programmausgaben ein paar **erläuternde Texte beifügen** können. cout << "Ergebnis: " << MeinZahlenWert << endl; Im Sinne der Benutzerfreundlichkeit eines Programms, sagt der Programmierer dem Benutzer, dass der Wert, der jetzt auf dem Bildschirm erscheint, das Ergebnis des Programms ist. ===== Eingabestrom aus cin ===== Um **Eingaben von der Tastatur zu lesen**, wird die Datenquelle **cin** (Das »in« in cin steht für »ein«. Es ist also das Eingabe-Objekt. Der Eingabeoperator besteht genau **spiegelverkehrt zum Ausgabeoperator** aus **zwei Größer-Zeichen**. Sie weisen quasi vom cin auf die Variable, in der die Eingabe abgelegt werden soll. #include int main(void) { int Zahleingabe; int Doppel; cout << "Bitte geben Sie eine Zahl ein!" << endl; cin >> Zahleingabe; Doppel = Zahleingabe * 2; cout << "Das Doppelte dieser Zahl ist " << Doppel << "." << endl; return 0; }