我有一个失败的C程序,我将其范围缩小到一个试图关闭stdout和stderr的fork() ed子级,后者在调用fork()之前被其父进程关闭-我假设这些流已传递给子进程。

在尝试使用类似fclose(stdout)的流将其关闭之前,我如何知道流是否已在C中关闭

最佳答案

UNIX上的C程序期望在启动时打开文件描述符0、1和2。如果您不希望它们走到任何地方,请打开/dev/null并将其dup编码到那些文件描述符。

关于c++ - 如何在调用fclose()之前判断流是否在C中关闭,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2369525/

10-11 22:39
查看更多