clearerr
重置流的错误指示器。 提供该函数的一个更安全版本;请参阅 clearerr_s。
void clearerr(
FILE *stream
);
参数
- stream
指向 FILE 结构的指针。
备注
clearerr 函数仅重置错误指示器和文件尾指示符 stream。 不会自动清除错误指示符;一次指定流的错误指示器设置,该流中继续,直到操作返回 clearerrfseek,fsetpos,rewind的错误值,或调用 。
如果 stream 是 NULL,则会调用无效参数处理程序,如 参数验证 中所述。 如果允许执行继续,则该函数将 errno 设置为 EINVAL 并返回。 有关 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
FakePre-e52db2837be44e178d3ee3949bb47952-6a0d7d5dd2744116b037870a876e2fca
.NET Framework 等效项
不适用。若要调用标准 C 函数,请使用 PInvoke。有关更多信息,请参见平台调用示例。