*addr实际指向的是一个sockaddr_in的结构体,这个结构体如下
struct sockaddr_in{
short sin_family;
unsigned short sin_port;
struct in_addr sin_addr;
char sin_zero[8];
};
sin_family是指选取可用网络的类型
sin_port,这个指端口,在bind中就是服务器要把自己的哪个端口开放用于接收数据,在connect中就是指出客户端要连接服务器的哪个端口,用于通讯。
sin_addr就是IP地址,bind的时候,这个就是包含本机的IP地址一个结构体,connect的时候就是包含服务器的IP地址一种结构体
其中ip地址就是sin_addr.S_un.S_addr。其它参数没用到。
最后一个参数我没用过,不知道什么意思。
如服务器绑定前的参考设定
addrSrv.sin_addr.S_un.S_addr=htonl(INADDR_ANY);
addrSrv.sin_family=AF_INET;
addrSrv.sin_port=htons(6100);