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 →