结构中的"s"是什么意思?

smw*_*dia 14 c unix posix network-programming

这是一个简单的问题.sin_family,sin_port,sin_addr和sin_zero中主要字母" s " 的含义是什么?

struct sockaddr_in {
    short int          sin_family;  // Address family, AF_INET
    unsigned short int sin_port;    // Port number
    struct in_addr     sin_addr;    // Internet address
    unsigned char      sin_zero[8]; // Same size as struct sockaddr
};
Run Code Online (Sandbox Code Playgroud)

谢谢.

Han*_*ant 33

这是来自伯克利,当LSD仍然合法时.在他们的命名选择中非常明显:/

除了开玩笑之外,这可以追溯到非常早期的K&R C,其中结构成员没有自己的命名空间.这要求您为结构成员提供不会与全局命名空间中的标识符冲突的不同名称.痛苦.使用结构名称的缩写来对名称进行前缀是常用方法.

因此"sockaddr_in"变成了"罪".

请注意枚解今天仍然存在这个问题,而不是以同样的方式解释.

  • 一种合成药物,可以持续无动力飞行.http://en.wikipedia.org/wiki/Lsd (7认同)
  • 谢谢大家,现在我知道的太多了。:) (2认同)

Joh*_*ica 6

sin被重复的名称sockaddr_in结构,即小号 OCKET IN国际互联网.


bdo*_*lan 5

在这种情况下,"sin"代表"Socket INternet".