当前位置:  开发笔记 > 编程语言 > 正文

显式关闭文件句柄或让操作系统在Unix C编程中关闭它们?

如何解决《显式关闭文件句柄或让操作系统在UnixC编程中关闭它们?》经验,为你挑选了2个好方法。

在Unix C编程中,在进程退出之前显式关闭文件句柄是一种很好的做法,还是让操作系统关闭文件句柄从而避免不必要的代码?

通常会将两者中的哪一个视为首选替代方案?

例:

int main (int argc, char* argv[])
{
    int sd;
    sd = socket(...);

    // Snip

   close(sd); // Good or bad practice?
   return 0;
}

Douglas Leed.. 10

通常,执行打开和关闭的代码不知道进程是否会立即退出 - 因此最好包含显式代码.

即使代码驻留在顶级main()函数中,如果重复使用代码仍然是个好主意.



1> Douglas Leed..:

通常,执行打开和关闭的代码不知道进程是否会立即退出 - 因此最好包含显式代码.

即使代码驻留在顶级main()函数中,如果重复使用代码仍然是个好主意.



2> Darron..:

自己关闭它们被认为是一种好习惯.

可能是因为这是一个好习惯,如果你的程序增长并且在你完成使用特定的"文件"后一段时间内没有出现退出.

例外是stdin,stdout和stderr,你的进程没有打开.

顺便提一下,UNIX术语是"文件描述符".

推荐阅读
mobiledu2402851377
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有