[英]What does the prefixes mean in UNIX NETWORK PROGRAMMING?
当我在读这本书的Unix网络编程 ,有很多Socket API的应用/有比如前缀类型sin_addr
与sin
, inet_addr
与inet
,并in_addr_t
用in
。 这些首选项实际上是什么意思,即全名是什么?
我相信,在早期,结构成员必须是唯一的。 在两个不同结构中为成员使用相同的名称失败。 对于有助于使用C结构和预处理器宏的程序集宏来说,这仍然是(而且一直是)。
因此,过去的结构和常量使用的前缀通常是从结构名称或上下文派生的。 例如,struct addressinfo使用ai前缀,struct sockaddr使用sa,struct sockaddr_in使用sin等。
为每个成员使用唯一的名称允许对C和asm代码使用相同的名称,这使得在两种语言中读取和编写代码更加容易。 切换语言时,无需在思维上切换音轨。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.