Определение в Microsoft из in_addr
может означать, что префикс "S_
" означает struct
согласно ответу @R .., а "un
" для union
однако они используют заглавную букву «S
» в отличие от земли POSIX.
typedef struct in_addr {
union {
struct {
u_char s_b1,s_b2,s_b3,s_b4;
} S_un_b;
struct {
u_short s_w1,s_w2;
} S_un_w;
u_long S_addr;
} S_un;
} IN_ADDR, *PIN_ADDR, FAR *LPIN_ADDR;
Для набора структур сокетов «s
» обычно означает «носок», сокращенно от «сокет», поэтомупохоже, что это причина определения.
Для любопытства на странице MSDN в разделе Поддержка IPv6 показано struct in6_addr
, содержащее имя s6_addr
, означающее версию IPv6 IPv4 " сокет"структура, а не просто" структура IPv4 ".