clearerr
From cppreference.net
File input/output
| Types and objects | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
定义于头文件
<stdio.h>
|
||
|
void
clearerr
(
FILE
*
stream
)
;
|
||
重置给定文件流的错误标志和
EOF
指示器。
目录 |
参数
| stream | - | 用于重置错误标志的文件 |
返回值
(无)
示例
运行此代码
#include <stdio.h> #include <assert.h> int main(void) { FILE* tmpf = tmpfile(); fputs("cppreference.net\n", tmpf); rewind(tmpf); for (int ch; (ch = fgetc(tmpf)) != EOF; putchar(ch)) { } assert(feof(tmpf)); // 预期循环因EOF终止 puts("End of file reached"); clearerr(tmpf); // 清除EOF puts(feof(tmpf) ? "EOF indicator set" : "EOF indicator cleared"); }
输出:
cppreference.net End of file reached EOF indicator cleared
参考文献
- C17 标准 (ISO/IEC 9899:2018):
-
- 7.21.10.1 clearerr 函数 (p: 246)
- C11 标准 (ISO/IEC 9899:2011):
-
- 7.21.10.1 clearerr 函数 (p: 338)
- C99标准(ISO/IEC 9899:1999):
-
- 7.19.10.1 clearerr函数(页码:304)
- C89/C90 标准 (ISO/IEC 9899:1990):
-
- 4.9.10.1 clearerr 函数
参考
|
检查文件结尾
(函数) |
|
|
将当前错误对应的字符串显示到
stderr
(函数) |
|
|
检查文件错误
(函数) |
|
|
C++ documentation
for
clearerr
|
|