📜  C++ ferror()(1)

📅  最后修改于: 2023-12-03 15:29:49.321000             🧑  作者: Mango

C++ ferror()函数介绍

简介

C++函数int ferror(FILE* stream)用于检测文件流stream上的错误指示器,如果发生错误,则返回一个非零值,否则返回零。

函数原型
int ferror(FILE* stream);
参数说明

stream是指向FILE类型的指针,其值通常是通过调用fopen()freopen()返回的。该函数检查stream上的错误指示器并返回它的值。

返回值

如果发生错误,ferror()会返回一个非零值,否则返回零。

示例

该示例演示了如何使用ferror()函数检测文件流stream上的错误指示器。

#include <stdio.h>

int main() {
  FILE* file = fopen("file.txt", "r");

  // 读取文件中的10个字符
  char buffer[10];
  size_t len = fread(buffer, sizeof(char), 10, file);

  //检查文件流上的错误指示器
  if (ferror(file)) {
    printf("读取文件出错!\n");
  } else {
    printf("读取成功,读取到了 %zu 个字符\n", len);
  }

  //关闭文件流
  fclose(file);

  return 0;
}
总结

在C++文件操作中,使用ferror()函数可以轻松地检测文件流上的错误指示器,以便在发生错误时及时进行处理。