clearerr_s
Сбрасывает индикатор ошибки для потока. Это версия clearerr с усовершенствованиями безопасности, как описано в Функции безопасности в CRT.
errno_t clearerr_s(
FILE *stream
);
Параметры
- stream
Указатель на структуру FILE.
Возвращаемое значение
Ноль в случае успешного завершения; EINVAL, если stream равен NULL.
Заметки
Функция clearerr_s сбрасывает индикатор ошибки и индикатор конца файла для stream. Индикаторы ошибки не очищаются автоматически; когда установлен индикатор ошибки для определенного потока, операции в этом потоке будут продолжать возвращать значение ошибки до вызова clearerr_s, clearerr, fseek, fsetpos или rewind
Если параметр stream имеет значение NULL, вызывается обработчик недопустимых параметров, как описано в разделе Проверка параметров. Если продолжение выполнения разрешено, функция устанавливает errno в EINVAL и возвращает EINVAL.
Требования
Подпрограмма |
Обязательный заголовок |
---|---|
clearerr_s |
<stdio.h> |
Дополнительные сведения о совместимости см. в разделе Совместимость во введении.
Пример
// 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
FakePre-cbdabc067d76485ab5005e49b337e721-2d0ab1df2b0a4b57a761ff0a9070da28
Эквивалент в .NET Framework
Неприменимо. Для вызова стандартной функции C используйте PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.