inet_ntoa() 返回一个字符指针,它指向一个定义在函数inet_ntoa() 中的static 类型字符串。所
以每次你调用inet_ntoa(),都会改变最后一次调用inet_ntoa() 函数时得到的结果。
比如:
char *a1, a2;
a1 = inet_ntoa(ina1.sin_addr); /* this is 166.111.69.52 */
a2 = inet_ntoa(ina2.sin_addr); /* this is 166.111.69.53 */
printf(“address 1: %s
”,a1);
printf(“address 2: %s
”,a2);
将会显示出:
address 1: 166.111.69.53
address 2: 166.111.69.53
如果你想把结果保存下来,那么你可以在每次调用inet_ntoa() 后调用strcpy() 将结果存到另外
一个你自己的字符串中。