Standard Datei Deskriptoren
← Binärdaten | ● | Kompilation mit Unix →
Die Deskriptoren
- stdin (Standardeingabe)
- stdout (Standardausgabe)
- stderr (Fehlermeldungen)
sind vordefinierte Streams, welche der Eingabe oder Ausgabe auf der Konsole entsprechen.
getchar()
ist eine Abkürzung für fgetc(stdin)
.putchar(c)
ist eine Abkürzung für fputc(stdout, c)
.
printf(...)
ist eine Abkürzung für fprintf(stdout, ...)
scanf(...)
ist eine Abkürzung für fscanf(stdin, ...)
.
Die Standard-Streams können umgeleitet werden, d.h. die Ausgabe eines Streams kann zur Eingabe eines anderen werden. Mit der Unix-Shell lassen sich Umleitungen einfach realisieren:
console: program <input.txt >output.txt
Anwendungsbeispiele der Umleitung:
Automatisierung einer Eingabe:
console: program <input.txt
Fehlermeldungen umleiten (loggen):
console: program >2 errors.txt
fprintf(stderr, ...)
landen in errors.txt.
Alle Ausgaben unterdrücken:
console: program >& /dev/null
Ausgabe eines Programms zur Eingabe eines anderen machen (pipe):
console: program1 | program2
Pipe-Beispiele:
grep "text" file.txt | wc -l egrep "\(.*\);" header.h | wc -l
← Binärdaten | ● | Kompilation mit Unix →