sockaddr_in
sockaddr结构体:
typedef struct sockaddr {
#if (_WIN32_WINNT < 0x0600)
u_short sa_family;
#else
ADDRESS_FAMILY sa_family; // Address family.
#endif //(_WIN32_WINNT < 0x0600)
CHAR sa_data[14]; // Up to 14 bytes of direct address.
} SOCKADDR, *PSOCKADDR, FAR *LPSOCKADDR;
sockaddr_in结构体:
typedef struct sockaddr_in {
#if(_WIN32_WINNT < 0x0600)
short sin_family; //地址族,AF_xxx只能是AF_INET
#else //(_WIN32_WINNT < 0x0600)
ADDRESS_FAMILY sin_family;
#endif //(_WIN32_WINNT < 0x0600)
USHORT sin_port; // 端口号 (网络字节序)
IN_ADDR sin_addr; //存储IP地址 4字节
CHAR sin_zero[8]; //8个字节兼容struct sockaddr
} SOCKADDR_IN, *PSOCKADDR_IN;
文章最后发布于: 2018-07-26 16:36:55
相关阅读
sockaddr_in与sockaddr的区别,以及对网络字节序和主机
一、sockaddr sockaddr在/usr/include/bits/socket.h下,查看sockaddr的结构: struct sockaddr { __SOCKADDR_COMMON (sa_);
在socket编程中经常会看到这样的情况: BOOL client(UINT uPort, LPCTSTR lpIpAddr) { SOCKET sok = socket(AF_INET, SOCK_S
struct sockaddr和struct sockaddr_in这两个结构体用来处理网络通信的地址。 一、sockaddr sockaddr在头文件#include <sys/so