clearerr
Restablece el indicador de error de una secuencia. Hay disponible una versión más segura de esta función; consulte clearerr_s
.
Sintaxis
void clearerr(
FILE *stream
);
Parámetros
stream
Puntero a la estructura FILE
.
Comentarios
La función clearerr
restablece el indicador de error y el indicador de fin de archivo para stream
. Los indicadores de error no se borran automáticamente; Una vez establecido el indicador de error de una secuencia especificada, las operaciones de esa secuencia continúan devolviendo un valor de error hasta clearerr
que se llama a , fseek
, fsetpos
o rewind
.
Si stream
es NULL
, se invoca el controlador de parámetros no válidos, tal y como se describe en Validación de parámetros. Si la ejecución puede continuar, la función establece errno
en EINVAL
y vuelve. Para obtener más información sobre errno
los códigos de error y , consulte errno
constantes.
Hay disponible una versión más segura de esta función; consulte clearerr_s
.
De manera predeterminada, el estado global de esta función está limitado a la aplicación. Para cambiar este comportamiento, consulte Estado global en CRT.
Requisitos
Routine | Encabezado necesario |
---|---|
clearerr |
<stdio.h> |
Para obtener más información sobre compatibilidad, consulte Compatibilidad.
Ejemplo
// 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" );
}
Entrada
n
Salida
Write error: No error
Will input cause an error? n
No read error
Consulte también
Control de errores
E/S de secuencia
_eof
feof
ferror
perror
, _wperror