www.pudn.com > linuxsocket.rar > test_address.c
// 示例inet函数族的使用 #include#include #include #include #include #include int main() { char buffer[32]; int ret = 0; int host = 0; int network = 0; unsigned int address = 0; struct in_addr in; in.s_addr = 0; /*输入一个以"."分隔的字符串形式的IP地址*/ printf("please input your ip address:"); fgets(buffer, 31, stdin); buffer[31] = '\0'; /*示例使用inet_aton()函数*/ if ((ret = inet_aton(buffer, &in)) == 0) { printf("inet_aton: \t invalid address\n"); } else { printf("inet_aton:\t0x%x\n", in.s_addr); } /*示例使用inet_addr()函数*/ if ((address = inet_addr(buffer)) == INADDR_NONE) { printf("inet_addr: \t invalid address\n"); } else { printf("inet_addr:\t0x%lx\n", address); } /*示例使用inet_network()函数*/ if ((address = inet_network(buffer)) == -1) { printf("inet_network: \t invalid address\n"); } else { printf("inet_network:\t0x%lx\n", address); } /*示例使用inet_ntoa()函数*/ if (inet_ntoa(in) == NULL) { printf("inet_ntoa: \t invalid address\n"); } else { printf("inet_ntoa:\t%s\n", inet_ntoa(in)); } /*示例使用inet_lnaof()与inet_netof()函数*/ host = inet_lnaof(in); network = inet_netof(in); printf("inet_lnaof:\t0x%x\n", host); printf("inet_netof:\t0x%x\n", network); in = inet_makeaddr(network, host); printf("inet_makeaddr:0x%x\n", in.s_addr); return 0; }