cout

Zweck

Mit cout werden Ausgaben erstellt. Die Ausgabe erfolgt standardmäßig auf dem Bildschirm. Dabei können die grundlegnden Basisdatentypen ohne besondere Vorkehrungen ausgegeben werden.

Bibliothek

#include < iostream >
using namespace std;
oder besser:
using std::cout

Syntax

cout << "Text\n"
Dabei dient '<<' als Ausgabeoperator.
Der auszugebende Text kann durch den Ausgabeoperator auch mit mehreren Texten und Variablen verknüpft werden:
Bsp.: cout << Text1 << Variable << endl;

Durch endl im obigen Beispiel werden alle im Puffer befindlichen Daten sofort an die Ausgabe geschickt und die Zeile beendet, dass heißt die nächste Ausgabe würde automatisch in der nächsten Zeile erfolgen. Aufgrund des Aufwendigeren Prozesses ist dies langsamer.
Alternativ kann mann:

Ausgabemanipulation von Zahlen

Dezimal, hexadezimale oder oktale Ausgabe
Manipulator Header Ausgabe
std::dec iostream dezimal (Basis 10)
bis was anderes bestimmt wird
std::hex iostream hexadezimal (Basis 16)
bis was anderes bestimmt wird
std::oct iostream oktal (Basis 8)
bis was anderes bestimmt wird
setbase(base)iomanip Basis base=8;10 od.16
bis was anderes bestimmt wird
setw(minBreite)iomanip minimale Ausgabebreite minBreite
der nächsten Ausgabe
setfill(char)iomanip Füllzeichen char, wenn breiter als benötigt
bis was anderes bestimmt wird

Beipiel:

#include <iostream>
#include <iomanip>

using std::cout;
using std::endl;
using std::hex;
using std::setw;
using std::setfill;

int main()
{
   int i=15;
   cout << setfill('_')<< setw(4) << hex << i <<endl;
   cout << setw(4) << hex << i+i*16 <<endl;
   return 0;
}

ergibt:

___f
__ff
setf bzw. unsetf und Formatierungsflags

Die Steuerung der Ausgabeinformation kann mit Hilfe der Memberfunktionen setf und unsetf des cout-Streams eingestellt werden. Die Funktionen liefern die bisherigen Zustände als long-Wert zurück. Die Flags sind im Namensraum std in der Klasse ios und können entsprechend über std::ios::FLAGNAME angesprochen werden

Flag Formatierung
uppercase Großbuchstaben für Hexzahlen und Exponenten
showbase Präfix für aktuelle Zahlenbasis anzeigen
(0x für hex; 0 für Oktal)
showpoint Erzwingt die Ausgabe des Dezimalpunktes und eventuell 0 bei Gleitkommazahlen
showpos Ausgabe des Vorzeichens auch bei positiven Zahlen
skipws Überliest bei Eingabe white-spaceses
boolalpha Gibt bei bool-Variablen true/false statt 1/0 aus
unitbuf Leert den Ausgabepuffer nach jeder Ausgabe
left, adjustfield Ausgabe linksbündig
rigth, adjustfield Ausgabe rechtsbündig
scientific, floatfied Ausgabe mit Exponenten
fixed, floadfield Ausgabe ohne Exponenten
dec, basefield Ausagabe als Dezimalzahl
hex, basefield Ausgabe als Hexadezimalzahl
oct, basefield Ausgabe als Oktalzahl

Beispiel linksbündig:

std::cout.setf(std::ios::left,std::ios::adjustfield);