C-Bibliotheksfunktionen -clearerr()
C-Standardbibliothek - <stdio.h>
Beschreibung
C-Bibliotheksfunktionenvoid clearerr(FILE *stream)Löscht die Dateiende- und Fehlerindikatoren für den angegebenen Stream.
Deklaration
Nachfolgend finden Sie die Deklaration der Funktion clearerr().
void clearerr(FILE *stream)
Parameter
- stream-- Dies ist ein Zeiger auf ein FILE-Objekt, das den Stream identifiziert.
Rückgabewert
Dies schlägt nicht fehl und setzt nicht die externe Variable errno, aber wenn es erkennt, dass sein Argument kein gültiger Stream ist, gibt es -1 zurück und setzt errno auf EBADF.
Beispiel
Das folgende Beispiel demonstriert die Verwendung der Funktion clearerr().
Beispiel
#include <stdio.h>
int main()
{
FILE *fp;
char c;
fp = fopen("file.txt", "w");
c = fgetc(fp);
if( ferror(fp) )
{
printf("Fehler beim Lesen der Datei: file.txt\n");
}
clearerr(fp);
if( ferror(fp) )
{
printf("Fehler beim Lesen der Datei: file.txt\n");
}
fclose(fp);
return(0);
}
int main()
{
FILE *fp;
char c;
fp = fopen("file.txt", "w");
c = fgetc(fp);
if( ferror(fp) )
{
printf("Fehler beim Lesen der Datei: file.txt\n");
}
clearerr(fp);
if( ferror(fp) )
{
printf("Fehler beim Lesen der Datei: file.txt\n");
}
fclose(fp);
return(0);
}
Angenommen, wir haben eine Textdateifile.txt, die eine leere Datei ist. Lassen Sie uns das obige Programm kompilieren und ausführen. Da wir versuchen, eine im Nur-Schreibmodus geöffnete Datei zu lesen, wird dies das folgende Ergebnis liefern.
读取文件:file.txt 时发生错误Weitere Erweiterungen