#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
int inet_aton(const char *cp, struct in_addr *inp);
in_addr_t inet_addr(const char *cp);
in_addr_t inet_network(const char *cp);
char *inet_ntoa(struct in_addr in);
struct in_addr inet_makeaddr(int net, int host);
in_addr_t inet_lnaof(struct in_addr in);
in_addr_t inet_netof(struct in_addr in);
其中 inet_ntoa就可以完成我要的功能。简单实现过程如下:
struct in_addr stInAddr;//必要的结构体,只要包含前面三个头文件,就不要犯愁这个结构的定义
unsigned int iTemp; //保存整型的数据
unsigned char ipaddr[20]; //保存转换后的地址
stInAddr.s_addr=iTemp;
pIp=inet_ntoa(stInAddr);
strcpy(ipaddr,pIp);
就可以把iTemp转换成字符串保存到ipaddr中。后面的工作就可以继续下去了。