Поделиться через


clearerr

Сбросить индикатор ошибки для потока.Более безопасную версию этой функции доступен; см. clearerr_s.

void clearerr(
   FILE *stream 
);

Параметры

  • stream
    Указатель на FILE структура.

Заметки

clearerr функция сбросит индикатор ошибки и признак конца файла stream.Индикаторы ошибки автоматически не удаляются. один раз индикатор ошибки для указанного потока набора операций в этом потоке продолжает возвращать значение ошибки - clearerr" fseek" fsetposили rewind вызывает.

If stream существует NULLнедопустимый параметр, обработчик вызывается, как описано в разделе Проверка параметров.Если выполнение может быть продолжено, то наборы этой функции errno В EINVAL и получает.Дополнительные сведения errno и коды ошибок см. в разделе константы errno.

Более безопасную версию этой функции доступен; см. clearerr_s.

Требования

Процедура

Обязательный заголовок

clearerr

<stdio.h>

Дополнительные сведения о совместимости см. Совместимость во введении.

Пример

// 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" );
}
  n
  n
ошибка записи: Нет ошибки
Вход вызовет ошибку? n
Нет ошибки чтения

Эквивалент в .NET Framework

Неприменимо. Для c# используйте стандартная функция PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.

См. также

Ссылки

Обработка исключений (CRT)

Поток ВВОДА-ВЫВОДА

_eof

feof

ferror

perror, _wperror