clearerr 函数文档

函数概要:

clearerr 函数用于清除指定文件的末尾指示器和错误指示器。

函数原型:

#include <stdio.h>
...
void clearerr(FILE *stream);

参数解析:

参数含义
stream该参数是一个 FILE 对象的指针,指定一个待操作的文件流

返回值:

该函数没有返回值。

演示:

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
        FILE *fp;
        int ch;

        if ((fp = fopen("file.txt", "w")) == NULL)
        {
                printf("打开文件失败!\n");
                exit(EXIT_FAILURE);
        }

        ch = fgetc(fp);
        if (ferror(fp))
        {
                printf("读取文件file.txt时出错1...\n");
        }
        clearerr(fp);

        if (ferror(fp))
        {
                printf("读取文件file.txt时出错2...\n");
        }

        fclose(fp);

        return 0;
}

如果没有 clearerr(fp);,则应该输出如下:

最后修改:2021 年 09 月 12 日
如果觉得我的文章对你有用,请随意赞赏