clearerr
Mereset indikator kesalahan untuk aliran. Versi fungsi ini yang lebih aman tersedia; lihat clearerr_s
.
Sintaks
void clearerr(
FILE *stream
);
Parameter
stream
Penunjuk ke FILE
struktur.
Keterangan
Fungsi mengatur clearerr
ulang indikator kesalahan dan indikator akhir file untuk stream
. Indikator kesalahan tidak dihapus secara otomatis; setelah indikator kesalahan untuk aliran tertentu diatur, operasi pada aliran tersebut terus mengembalikan nilai kesalahan hingga clearerr
, , fseek
fsetpos
, atau rewind
dipanggil.
Jika stream
adalah NULL
, handler parameter yang tidak valid dipanggil, seperti yang dijelaskan dalam Validasi parameter. Jika eksekusi diizinkan untuk melanjutkan, fungsi ini diatur errno
ke EINVAL
dan dikembalikan. Untuk informasi selengkapnya tentang errno
kode kesalahan dan , lihat errno
konstanta.
Versi fungsi ini yang lebih aman tersedia; lihat clearerr_s
.
Secara default, status global fungsi ini dicakup ke aplikasi. Untuk mengubah perilaku ini, lihat Status global di CRT.
Persyaratan
Rutin | Header yang diperlukan |
---|---|
clearerr |
<stdio.h> |
Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.
Contoh
// 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" );
}
Input
n
Output
Write error: No error
Will input cause an error? n
No read error
Lihat juga
Penanganan kesalahan
Streaming I/O
_eof
feof
ferror
perror
, _wperror