-2

类型 size_t 在哪里定义了像这样的其他类型,是否有 linux (gcc) 中所有用户定义的类型和数据结构的引用。 例如参考指南

  • sockaddr_in6
  • sockaddr_in
  • mm_struct
  • pci_dev
  • sk_buff
  • tq_struct

...

4

1 回答 1

2

最终的参考是标准。

C 标准定义size_t并说它是在<stddef.h>(在 GNU/Linux 上,标头由 GCC 提供)中定义的,并且 POSIX 要求在包含后定义它<sys/types.h>

POSIX 标准sockaddr_in6<netinet/in.h>

也适用于例如:size_t,通常是无符号整数,为什么我们定义 > size_t val ;而不是 unsigned int val ;

因为它可能不是unsigned int。在我的平台上它是unsigned long,因此通过编写,size_t您可以获得一个保证能够表示必要值范围的类型。使用unsigned int并不能保证这一点。

于 2013-05-01T14:34:36.783 回答