Baca dalam bahasa Inggris

Bagikan melalui


clearerr_s

Mereset indikator kesalahan untuk aliran. Fungsi ini adalah versi clearerr dengan peningkatan keamanan seperti yang dijelaskan dalam Fitur keamanan di CRT.

Sintaks

errno_t clearerr_s(
   FILE *stream
);

Parameter

stream
Penunjuk ke FILE struktur

Nilai hasil

Nol jika berhasil; EINVAL jika stream adalah NULL.

Keterangan

Fungsi mengatur clearerr_s 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_s, , clearerrfseek, 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 mengembalikan EINVAL.

Secara default, status global fungsi ini dicakup ke aplikasi. Untuk mengubah perilaku ini, lihat Status global di CRT.

Persyaratan

Rutin Header yang diperlukan
clearerr_s <stdio.h>

Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.

Contoh

// crt_clearerr_s.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;
   errno_t err;

   // Create an error by writing to standard input.
   putc( 'c', stdin );
   if( ferror( stdin ) )
   {
      perror( "Write error" );
      err = clearerr_s( stdin );
      if (err != 0)
      {
         abort();
      }
   }

   // See if read causes an error.
   printf( "Will input cause an error? " );
   c = getc( stdin );
   if( ferror( stdin ) )
   {
      perror( "Read error" );
      err = clearerr_s( stdin );
      if (err != 0)
      {
         abort();
      }
   }
}

Input

n

Output

Write error: Bad file descriptor
Will input cause an error? n

Lihat juga

Penanganan kesalahan
Streaming I/O
clearerr
_eof
feof
ferror
perror, _wperror