c - 在库之间共享 FILE 指针

标签 c file io fopen stdio

我有一个简单的问题;我在我的一个库中使用 FILE* fpfopen/fwrite 到文件,我想执行 fclose()另一个库中的 fp - 另一个库获取文件句柄的最佳方式是什么?

最佳答案

如果您的两个库相互通信,那么第一个库应该在函数调用中将 FILE* 传递给第二个库。

如果库之间不相互通信,那么主应用程序应该从第一个库获取 FILE* 并将其传递给第二个库。或者更好的是,应用程序应该拥有 FILE*,将它交给已经打开的第一个库,然后将它交给第二个库以完成关闭,最后应用程序应该关闭 FILE* 本身。当您拥有类似文件但没有名称的内容时,尝试处理需要文件名而不是 FILE* 的库可能会非常令人沮丧。

关于c - 在库之间共享 FILE 指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7398960/

相关文章:

c - 自旋锁初始化函数

c - C语言结构体中有指针成员,以及如何将结构体数据输出到串口

android - 如何在sqlite中导入txt文件?

c - 使用命令提示符在 C 中重命名 SRT 文件

Perl:基于事件和基于并行的风格 - 何时选择一种?

linux - 使用内核 AIO 的应用程序

c - 我的 c 程序应该使用 openmp 在多个线程中运行,但事实并非如此

c - 如何检查C中未初始化的指针

Java URL : Unknown Protocol "C"

c - 类似于 Linux 的 C 库中的 SetFileLength() 的函数