in_addr是一个结构体,可以用来表示一个32位的
IPv4地址。
结构体头文件
#include <arpa/inet.h>
结构体样式
结构体in_addr 用来表示一个32位的
IPv4地址.
in_addr_t 一般为 32位的unsigned int,其字节顺序为网络顺序(network byte ordered),即该无符号整数采用大端字节序。.
其中每8位代表一个IP地址位中的一个数值.
例如192.168.3.144记为0x9003a8c0,其中 c0 为192 ,a8 为 168, 03 为 3 , 90 为 144
打印的时候可以调用
inet_ntoa()函数将其转换为char *类型.
IP结构体的使用
代码中的应用
server.sin_addr=*((in_addr *)he->h_addr);
同时,在Live555的源文件中出现了以下的使用方法:
struct in_addr const& groupAddress() const { return fGroupAddress; }
struct in_addr destAddr = fDests->fGroupEId.groupAddress();
这里fDest是一个单向链表,groupAddress()为fGroupEId中的方法。