clearerr, feof, ferror - Prüfen und Rücksetzen des
Datenstrom-Status
Standard-C-Bibliothek (
libc,
-lc)
#include <stdio.h>
void clearerr(FILE *datenstrom);
int feof(FILE *datenstrom);
int ferror(FILE *datenstrom);
Die Funktion
clearerr() löscht die Dateiende- und Fehlerkennungen
für den Datenstrom, auf den
datenstrom weist.
Die Funktion
feof() prüft die Dateiendekennung für den
Datenstrom
datenstrom.
feof() liefert ein Ergebnis ungleich 0,
wenn die Dateiendekennung gesetzt ist. Die Dateiendekennung kann nur von der
Funktion
clearerr() gelöscht werden.
Die Funktion
ferror() prüft die Fehlerkennung für den
Datenstrom
datenstrom.
ferror liefert ein Ergebnis ungleich 0,
wenn die Fehlerkennung gesetzt ist. Die Fehlerkennung kann nur mit der
Funktion
clearerr() gelöscht werden.
Für nicht sperrende Gegenstücke siehe
unlocked_stdio(3).
Die Funktion
feof() gibt einen von Null verschiedenen Wert zurück,
falls der End-of-File-Indikator für
datenstrom gesetzt ist;
anderenfalls wird Null zurückgegeben.
Die Funktion
ferror() gibt einen von Null verschiedenen Wert
zurück, falls der Fehler-Indikator für
datenstrom gesetzt
ist; anderenfalls wird Null zurückgegeben.
Diese Funktionen sollten nicht fehlschlagen und
errno nicht setzen.
Siehe
attributes(7) für eine Erläuterung der in diesem
Abschnitt verwandten Ausdrücke.
Schnittstelle |
Attribut |
Wert |
clearerr(), feof(), ferror() |
Multithread-Fähigkeit |
MT-Safe |
Die Funktionen
clearerr(),
feof() und
ferror() sind konform
zu C99, POSIX.1-2001 und POSIX.1-2008.
POSIX.1-2008 spezifiziert, dass diese Funktionen den Wert von
errno nicht
ändern sollen, falls
datenstrom gültig ist.
Normalerweise sollten Programme den Rückgabewert einer Eingabefunktion
wie
fgetc(3) lesen, bevor sie Funktionen der Familie
feof(3)
verwenden. Nur wenn die Funktion den Wächterwert
EOF
zurückliefert, ist es sinnvoll, zwischen dem Ende einer Datei und einem
Fehler mit
feof(3) oder zu unterscheiden.
open(2),
fdopen(3),
fileno(3),
stdio(3),
unlocked_stdio(3)
Die deutsche Übersetzung dieser Handbuchseite wurde von Roland Krause
<
[email protected]>, Martin Eberhard Schauer
<
[email protected]>, Mario Blättermann
<
[email protected]> und Helge Kreutzmann
<
[email protected]> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die
GNU
General Public License Version 3 oder neuer bezüglich der
Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken
Sie bitte eine E-Mail an die
Mailingliste
der Übersetzer