我在C做了一个程序,父亲与孩子交流,孩子分别通过2个管道与父亲沟通。
它完美无缺。
父关闭一个管道的读取端,并关闭另一个管道的写入端。 对于儿子来说也是如此,只是改变每个管道中要关闭的东西。
理论问题是:
当所有孩子完成他们的执行,并且父亲即将成功退出时,我应该关闭其他两个类型吗?
真的有必要吗?为什么?我只是想更好地理解程序的整个结构。
提前感谢!
答案 0 :(得分:1)
当您退出程序时,任何打开的文件都将自动close
。
您当然可以明确地关闭它,如果您想要进行任何特殊的错误处理,您应该明确关闭它,以便检查close()
的返回值。
您可能已经注意到,如果磁盘已满且有数据尚未close()
,flush
将返回错误。