C 在库之间共享文件指针
我有一个简单的问题;我正在使用我的一个库中的C 在库之间共享文件指针,c,file,io,fopen,stdio,C,File,Io,Fopen,Stdio,我有一个简单的问题;我正在使用我的一个库中的文件*fp来fopen/fwrite写入文件,我想执行fclose()在另一个库中的fp上-另一个库获取文件句柄的最佳方式是什么?如果两个库相互通信,则第一个库应在函数调用中将文件*传递给第二个库 如果两个库之间没有通信,那么主应用程序应该从第一个库获取文件*,并将其交给第二个库。或者更好的方法是,应用程序应该拥有文件*,将其交给已经打开的第一个库,然后将其交给要完成的第二个库,最后应用程序应该关闭文件*本身。试图处理一个需要文件名而不是文件*的库,当
文件*fp
来fopen/fwrite
写入文件,我想执行fclose()
在另一个库中的fp
上-另一个库获取文件句柄的最佳方式是什么?如果两个库相互通信,则第一个库应在函数调用中将文件*
传递给第二个库
如果两个库之间没有通信,那么主应用程序应该从第一个库获取
文件*
,并将其交给第二个库。或者更好的方法是,应用程序应该拥有文件*
,将其交给已经打开的第一个库,然后将其交给要完成的第二个库,最后应用程序应该关闭文件*
本身。试图处理一个需要文件名而不是文件*
的库,当您有一个类似文件但没有名称的库时,可能会非常令人沮丧。如果您的两个库相互通信,那么第一个库应该在函数调用中将文件*
传递给第二个库
如果两个库之间没有通信,那么主应用程序应该从第一个库获取
文件*
,并将其交给第二个库。或者更好的方法是,应用程序应该拥有文件*
,将其交给已经打开的第一个库,然后将其交给要完成的第二个库,最后应用程序应该关闭文件*
本身。试图处理一个需要文件名而不是文件的库*
可能会非常令人沮丧,因为您有一个类似文件但没有名称的库。通常,在同一上下文/任务中,在同一级别处理文件的打开和关闭被认为是最佳做法。与内存分配/释放相同。(但在你的情况下,你可能有特定的要求)这是一个奇怪的要求;奇怪的需求通常(并非总是)表示设计不正确或以错误的方式解决问题。两个库是否使用相同的运行时?通常认为,在相同的上下文/任务中处理同一级别文件的打开和关闭是最佳做法。与内存分配/释放相同。(但在你的情况下,你可能有特定的要求)这是一个奇怪的要求;奇怪的需求通常(被认为并不总是)表示设计不正确或以错误的方式解决问题。两个库是否使用相同的运行时?