_NFILE定义在哪里

时间:2012-04-06 17:28:31

标签: c

要创建一个守护进程,我已经在某处阅读了为了关闭所有打开的文件描述符,我们可以使用以下代码: -

for (fd = 0; fd < _NFILE; fd++)
  close(fd); /* close all file descriptors */

我必须将_NFILE定义为

#define _NFILE 3

还是已经在某些包含文件中定义了? 我试图在/ usr / include目录中grep它,但找不到任何东西。

2 个答案:

答案 0 :(得分:2)

_NFILE仅适用于原始Unix。可行的方法是sysconf(_SC_OPEN_MAX)(POSIX)。

答案 1 :(得分:1)

This stdio.h

  
      
  • _NFILE的值在Processor Specific ABI中定义。值
  •   选择
  • 是出于历史原因,而不是真正与处理器相关的
  •   
  • 属性。请注意,SPARC Processor Specific ABI使用常见的
  •   
  • UNIX历史值20 [...]。
  •   

然后继续根据机器架构定义一些值