标签: linux printf
我有一个c ++程序A,它使用fopen打开一个文件追加(file_name," a");该文件通过fprintf()写入。一切正常,直到我从另一个会话编辑文件(例如使用vim);这在调试期间是必要的。从vim会话保存文件程序后,A停止写入该文件。我已经检查过,fprintf()据我所知正常工作;正如预期的那样,返回值等于写入的字节数,但文件中没有显示任何内容。有人能解释为什么会这样吗?具体来说,有一种方法可以让程序A检测出这种情况并对其采取一些措施;例如关闭并重新打开文件。