Sdílet prostřednictvím


clearerr

Obnoví indikátor chyby datového proudu. K dispozici je bezpečnější verze této funkce; viz .clearerr_s

Syntaxe

void clearerr(
   FILE *stream
);

Parametry

stream
Ukazatel na FILE strukturu.

Poznámky

Funkce clearerr resetuje indikátor chyby a indikátor konce souboru pro stream. Indikátory chyb nejsou automaticky vymazány; jakmile je nastaven indikátor chyby pro zadaný datový proud, operace v tomto datovém proudu budou nadále vracet chybovou hodnotu do clearerr, fseek, , fsetposnebo rewind je volána.

Pokud stream je NULL, je vyvolána neplatná obslužná rutina parametru, jak je popsáno v ověření parametru. Pokud je spuštění povoleno pokračovat, tato funkce se nastaví errno na EINVAL a vrátí. Další informace o errno kódech chyb najdete v tématu errno konstanty.

K dispozici je bezpečnější verze této funkce; viz .clearerr_s

Ve výchozím nastavení je globální stav této funkce vymezen na aplikaci. Chcete-li toto chování změnit, přečtěte si téma Globální stav v CRT.

Požadavky

Rutina Požadovaný hlavičkový soubor
clearerr <stdio.h>

Další informace o kompatibilitě najdete v tématu Kompatibilita.

Příklad

// 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" );
}

Vstup

n

Výstup

Write error: No error
Will input cause an error? n
No read error

Viz také

Zpracování chyb
Vstupně-výstupní operace streamu
_eof
feof
ferror
perror, _wperror