#include "../apue.h"
int main(void){
//验证当前平台属哪种字节序
unsigned int x=0x12345678;
unsigned char *p=(unsigned char*)&x;
printf("%x-%x-%x-%x\n", p[0],p[1],p[2],p[3]);
//将主机字节序转换为网络字节序
unsigned int y = htonl(x);
p=(unsigned char*)&y;
printf("%x-%x-%x-%x\n", p[0],p[1],p[2],p[3]);
//将IP转换为字节序整数
in_addr_t ipm=inet_addr("192.168.0.100");
printf("imp=%u\n", ntohl(ipm));
//将网络字节序整数转换成IP
struct in_addr ipaddr;
ipaddr.s_addr = ipm;
printf("ip=%s\n", inet_ntoa(ipaddr));
//将IP转换为字节序整数
struct in_addr inp={0};
inet_aton("192.168.0.100", &inp);
printf("inp=%u\n", ntohl(inp.s_addr));
return 0;
}
转载于:https://blog.51cto.com/hallen/1186862