Linux 中,套接字地址用如下结构表示:
struct in_addr{
in_addr_t s_addr;
};
struct sockaddr_in{
sa_family_t sin_family; //address family
in_port_t sin_port //port number
struct in_addr sin_addr;//ipv4 address
unsigned char sin_zero[8] //filler
};
in_port_t 定义为uint16_t
in_addr_t 定义为uint32_t
其中,成员 sin_zero 为填充字段,必须全部设置为0
sin_port 与 sin_addr.s_addr 必须是网络字节序的。