C 数据结构的描述在哪一部分?

C 数据结构的描述在哪一部分?

我阅读了以下关于手册页各个部分代表的内容的答案 QA:手册页中的数字是什么意思?

读完后,我不确定哪一部分是 C 数据结构的描述。它是像 C 函数的描述一样放在第 3 节中,还是放在不同的部分中?

重要的是我要了解有关 C 数据结构的手册页的哪一部分,并且我收到的答案并不特定于操作系统系列的某一特定风格。我需要一个对所有人来说都是标准的答案。

答案1

C 结构通常在与其最相关的特性或函数的手册页中详细说明。例如:

  • 该结构在(系统调用)struct sockaddr中定义。bind(2)
  • 该结构在(文件格式:utmp)struct utmp中定义。utmp(5)

开发人员也没有特别要求在手册页中提供有关其结构的详细信息,因为这基本上是经过良好注释的头文件的工作(请参阅 参考资料/usr/include)。

一般来说,如果您正在寻找有关结构的详细信息,请查看您使用它的功能。例如,如果您想了解更多有关asctime的参数 ( struct tm) 的信息,请查看asctime的手册页。大多数结构都带有一组用于操作它们的函数,并且这些函数通常有一个手册页。如果没有与您的结构相关的功能,这里有一些选项:

  • 该结构与一个概念密切相关(例如,struct sockaddr_unUNIX 套接字)。查看与该概念相关的手册页(此处,unix(7))。
  • 该结构与一个文件相关联,或者用于解析该文件(例如struct utmp):查看该文件的手册页(如果有)(此处为utmp(5))。
  • 该结构似乎没有记录在任何手册页中,请查看定义它的头文件。这是 的示例struct ifaddrs,尽管它有一个手册页getifaddrs(3)

文件:/usr/include/ifaddrs.h

struct ifaddrs
{
   struct ifaddrs *ifa_next;     /* Pointer to the next structure.  */

   char *ifa_name;               /* Name of this network interface.  */
   unsigned int ifa_flags;       /* Flags as from SIOCGIFFLAGS ioctl.  */

   struct sockaddr *ifa_addr;    /* Network address of this interface.  */
   struct sockaddr *ifa_netmask; /* Netmask of this interface.  */

   // ...
};

相关内容