Udostępnij za pośrednictwem


clearerr_s

Resetuje wskaźnik błędu dla strumienia.Jest to wersja z clearerr z rozszerzeń zabezpieczeń opisane w Funkcje zabezpieczeń w CRT.

errno_t clearerr_s(
   FILE *stream 
);

Parametry

  • stream
    Wskaźnik, aby FILE struktury

Wartość zwracana

Zero, jeśli kończy się pomyślnie; EINVALJeśli stream ma wartość NULL.

Uwagi

clearerr_s Funkcji resetuje wskaźnik błędu i wskaźnik końca pliku dla stream.Wskaźniki błędów nie są automatycznie usuwane; Po ustawieniu wskaźnika błędu dla strumienia określonego działania w tym strumieniu nadal zwraca wartość błędu, aż do clearerr_s, clearerr, fseek, fsetpos, lub rewind jest wywoływana.

Jeśli stream ma wartość NULL, wywoływana jest funkcja obsługi nieprawidłowy parametr, jak opisano w Sprawdzanie poprawności parametru.Jeśli wykonanie może kontynuować, ta funkcja ustawia errno do EINVAL i zwraca EINVAL.

Wymagania

Rozpoczęto wykonywanie procedury

Wymaganego nagłówka

clearerr_s

<stdio.h>

Aby uzyskać dodatkowe informacje o zgodności, zobacz zgodności we wprowadzeniu.

Przykład

// 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();
      }
   }
}
  n
  n
błąd zapisu: zły plik deskryptora
Czy dane wejściowe spowoduje błąd? n

Odpowiednik w programie .NET Framework

Nie dotyczy. Aby wywołać standardowych funkcji C, należy użyć PInvoke. Aby uzyskać więcej informacji, zobacz Przykłady wywołać platformy.

Zobacz też

Informacje

Błąd obsługi (CRT)

Strumień we/wy

clearerr

_eof

feof

ferror

perror, _wperror