clearerr
Resetuje wskaźnik błędu dla strumienia. Dostępna jest bezpieczniejsza wersja tej funkcji; zobacz clearerr_s
.
Składnia
void clearerr(
FILE *stream
);
Parametry
stream
Wskaźnik do FILE
struktury.
Uwagi
Funkcja clearerr
resetuje wskaźnik błędu i wskaźnik końca pliku dla elementu stream
. Wskaźniki błędów nie są automatycznie czyszczone; po ustawieniu wskaźnika błędu dla określonego strumienia operacje na tym strumieniu będą nadal zwracać wartość błędu do clearerr
wywołania metody , fseek
, fsetpos
lub rewind
.
Jeśli stream
parametr ma NULL
wartość , wywoływana jest nieprawidłowa procedura obsługi parametrów, zgodnie z opisem w temacie Weryfikacja parametrów. Jeśli wykonywanie jest dozwolone do kontynuowania, ta funkcja ustawia wartość errno
EINVAL
i zwraca. Aby uzyskać więcej informacji na errno
temat kodów błędów i ich kodów, zobacz errno
stałe.
Dostępna jest bezpieczniejsza wersja tej funkcji; zobacz clearerr_s
.
Domyślnie stan globalny tej funkcji jest zakresem aplikacji. Aby zmienić to zachowanie, zobacz Stan globalny w CRT.
Wymagania
Procedura | Wymagany nagłówek |
---|---|
clearerr |
<stdio.h> |
Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.
Przykład
// crt_clearerr.c
// This program creates an error
// on the standard input stream, then clears
// it so that future reads won't fail.
#include <stdio.h>
int main( void )
{
int c;
// Create an error by writing to standard input.
putc( 'c', stdin );
if( ferror( stdin ) )
{
perror( "Write error" );
clearerr( stdin );
}
// See if read causes an error.
printf( "Will input cause an error? " );
c = getc( stdin );
if( ferror( stdin ) )
{
perror( "Read error" );
clearerr( stdin );
}
else
printf( "No read error\n" );
}
Dane wejściowe
n
Dane wyjściowe
Write error: No error
Will input cause an error? n
No read error
Zobacz też
Obsługa błędów
We/Wy strumienia
_eof
feof
ferror
perror
, _wperror