学科分类
目录
C语言

ferror()函数

ferror()函数用于检查输入输出函数进行读写操作时是否出错,该函数的声明如下所示:

int ferror(FILE * stream);

上述函数声明中,参数stream表示一个文件指针。如果对文件进行读写操作时出错,该函数返回1,没有出现错误返回0。

接下来通过一个具体案例来学习ferror()函数的使用,如例1所示。

例1 ferrorFile.c

 1    #define _CRT_SECURE_NO_WARNINGS
 2    #include <stdio.h>
 3    int main()
 4    {
 5        FILE* fp;
 6        fp = fopen("ferror.txt", "r");
 7        if (pFile == NULL)
 8            perror("文件打开失败!");
 9        fputc('A', fp);
 10        if (ferror(fp))
 11            perror("写入错误!\n");
 12        fclose(fp);
 13        return 0;
 14    }

例1运行结果如图1所示。

图1 例1运行结果

在例1中,第10行代码使用ferror()函数检测文件读写是否出现错误;第11行代码使用perror()函数打印出错时原因。从图1输出结果可以看出,文件以只读方式打开,不允许写操作,因此显示错误的文件描述符(文件指针)。

点击此处
隐藏目录