clearerr
来自cppreference.com
| 在标头 <stdio.h> 定义
|
||
| |
||
重置给定文件流的错误标志和 EOF 指示器。
参数
| stream | - | 要重置错误标志的文件流 |
返回值
(无)
示例
运行此代码
#include <stdio.h>
#include <assert.h>
int main(void)
{
FILE* tmpf = tmpfile();
fputs("cppreference.com\n", tmpf);
rewind(tmpf);
int ch;
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.com
End of file reached
EOF indicator cleared
引用
- C11 标准(ISO/IEC 9899:2011):
- 7.21.10.1 The clearerr function (第 246 页)
- C11 标准(ISO/IEC 9899:2011):
- 7.21.10.1 The clearerr function (第 338 页)
- C99 标准(ISO/IEC 9899:1999):
- 7.19.10.1 The clearerr function (第 304 页)
- C89/C90 标准(ISO/IEC 9899:1990):
- 4.9.10.1 The clearerr function
参阅
| 检查文件结尾 (函数) | |
| 显示对应当前错误的字符串到 stderr (函数) | |
| 检查文件错误 (函数) | |
clearerr 的 C++ 文档
| |