如何给套接字地址赋值
struct sockaddr_in{ //16 bytes
uint8_t sin_len; //1 byte
sa_family_t sin_family; //1 byte
in_port_t sin_port; //2 bytes
struct in_addr sin_addr; //4 bytes
char sin_zero[8]; //unused 8 bytes
}
struct in_addr{ //为什么一个元素还用结构体包裹?
in_addr_t s_addr;
}
通用套接字地址结构
struct sockaddr{ //16bytes
uint8_t sa_len; //1 byte
sa_family_t sa_family; 1 byte
char sa_data[14]; //14 bytes
}
假如已经有个一个套接字地址结构体 addr (sockaddr_in),赋值:
addr.sin_family=AF_INET;
addr.sin_addr.s_addr = htonl(INADDR_ANY);
//INADDR_ANY 即 0.0.0.0 ,表示本机的所有网卡地址
addr.sin_port = htons(xxxx);
//端口号1024~65535可以自主分配