首页 > 解决方案 > 在以另一种模式打开文件之前,我是否必须关闭文件?

问题描述

如标题所示 - 在以另一种模式打开同一个文件之前,我必须调用 fclose() 吗?

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

int main()
{
  FILE *file;
  file = fopen("test.txt", "r");
  // do some reading

  // do i have to call fclose() here?

  file = fopen("test.txt", "w");
  // do some writing

  fclose(file);
  
  return 0;
}

标签: cfile-io

解决方案


是的。文件作业完成后关闭是一个好习惯。进程的句柄有限,所以如果你多次打开,没有关闭,你可能会面临 fopen 失败。


推荐阅读