c - 使用 fclose 函数的原因

标签 c file file-io

<分区>

Possible Duplicate:
fopen without fclose in C

为什么我需要在 C 中使用 fclose 函数?每次我在 c 中打开它时我都会关闭文件,仍然只是为了知识我想知道如果我不使用 fclose 函数会发生什么?如果有人因不使用 fclose 而遇到问题,请分享。

最佳答案

如果您不关闭一个文件,您将耗尽资源来获取更多文件。在 Linux 中,默认为每个进程打开 1024 个文件,这是因为“文件句柄”是表的索引(即索引数组)。我不知道它在 Windows 上是如何处理的,但如果你只是继续打开文件但不关闭它们,这个过程迟早会耗尽资源。

另一方面,如果您打开一个在程序的整个生命周期中都在使用的文件,那么就没有必要一直打开/关闭它。打开一次并保持打开状态。此外,退出进程时所有打开的文件都将关闭,因此如果您的程序只是对文件进行一些快速处理然后退出,您不必关闭它。但是,如果我正在审查代码,我仍然会添加一个注释,如果你分配了一个资源(内存、文件、其他东西)我认为你应该在完成后释放它,即使它是由系统自动完成的。

关于c - 使用 fclose 函数的原因,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12856753/

相关文章:

C#:向二进制文件写入和读取列表

android - 无法使用文件类删除文件

c# - 使 Directory.GetFiles() 忽略 protected 文件夹

c - 在C中使用kbhit控制机器人的BGI绘图

c - 如何在C中将短值除以int

c - 头文件中的全局结构

c# - 如何将文本文件存储到具有不同字符串格式的数组中?

c++ - 如何使用 Int 65H 输出字符串?

c++ - 文件 I/O 行尾

java - 检查Java中图像是否存在