clearerr_s
重置流的错误指示器。 clearerrCRT 中的安全功能所述)。
errno_t clearerr_s(
FILE *stream
);
参数
- stream
指向 FILE 结构的指针。
返回值
如果成功则为0;EINVAL如果 stream为 NULL。
备注
clearerr_s 函数仅重置错误指示器和文件尾指示符 stream。 不会自动清除错误指示符;一次指定流的错误指示器设置,该流中继续,直到操作返回 clearerr_sclearerr,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-24a4d48c2c13479fae4258ebe8a321ea-ff52adfb9b5349b68ba5056b749cd2f1
.NET Framework 等效项
不适用。若要调用标准 C 函数,请使用 PInvoke。有关更多信息,请参见平台调用示例。