C语言ferror():检查文件操作是否出现错误
ferror() 是 C语言的一个标准库函数,定义在
ferror() 函数的功能是检查操作目标文件的过程中是否出现了错误。ferror() 函数的原型如下:
ferror() 函数通常与文件读取和写入操作一起使用,以检测是否发生了错误。例如,由于磁盘空间不足、权限问题或其他原因而无法写入文件,ferror() 可用于检测这样的错误。
【实例】以下是一个 C语言示例代码,演示了如何使用 ferror() 函数。
<stdio.h>
头文件中。ferror() 函数的功能是检查操作目标文件的过程中是否出现了错误。ferror() 函数的原型如下:
int ferror(FILE *stream);
参数
stream 是一个指向 FILE 类型的指针,代表要检查的文件。返回值
如果操作文件过程中发生了错误,则函数返回一个非零值;否则,返回零。ferror() 函数通常与文件读取和写入操作一起使用,以检测是否发生了错误。例如,由于磁盘空间不足、权限问题或其他原因而无法写入文件,ferror() 可用于检测这样的错误。
【实例】以下是一个 C语言示例代码,演示了如何使用 ferror() 函数。
#include <stdio.h> int main() { FILE *file; // 以写入模式打开文件 file = fopen("example.txt", "w"); if (file == NULL) { perror("文件打开失败"); return 1; } // 尝试写入文件 if (fprintf(file, "Hello, World!") < 0) { if (ferror(file)) { perror("文件写入失败"); // 关闭文件 fclose(file); return 2; } } // 关闭文件 fclose(file); printf("文件成功写入。\n"); return 0; }在这个示例中,先使用 fopen() 以写入模式打开一个文件,然后尝试用 fprintf() 将字符串写入文件,如果写入操作返回负值,用 ferror() 检测是否发生了错误,并使用 perror() 打印具体的错误信息,最后用 fclose() 关闭文件。