inet_addr()这个函数是转化成数字了 比如inet_addr(202.113.1.12):201421458
可不可以再把这个数字转换成IP形式呢? 因为我要再pingproc(char *ip)中使用这个变量
我的目的是:从命令行中提取要PING的机器地址段,然后各个处理比如一个地址段:从202.113.1.12到202.113.1.255, 先看看我的笨方法,大概是这个意思
我的困难在于如何再把数字格式转化成字符串,或者说IP的格式unsigned long i,j,k;
i=inet_addr("202.113.1.12");
j=inet_addr("202.113.1.255");for(k=i;k<=j;k++)
{
char *ip = addrproc(k); //addrproc()如何完成??????
pingproc(ip);
}
可不可以再把这个数字转换成IP形式呢? 因为我要再pingproc(char *ip)中使用这个变量
我的目的是:从命令行中提取要PING的机器地址段,然后各个处理比如一个地址段:从202.113.1.12到202.113.1.255, 先看看我的笨方法,大概是这个意思
我的困难在于如何再把数字格式转化成字符串,或者说IP的格式unsigned long i,j,k;
i=inet_addr("202.113.1.12");
j=inet_addr("202.113.1.255");for(k=i;k<=j;k++)
{
char *ip = addrproc(k); //addrproc()如何完成??????
pingproc(ip);
}
i = ntohl(inet_addr("202.113.1.12"));
j = ntohl(inet_addr("202.113.1.255"));for(k = i ; k <= j ; k++)
pringproc(htonl(k));如果你的CPU是SUN系列的,也就是高位在前的。就这样:
i = inet_addr("202.113.1.12");
j = inet_addr("202.113.1.255");for(k = i ; k <= j ; k++)
pringproc(htonl(k));
pringproc(k);
原型:
char FAR * inet_ntoa(
struct in_addr in
);成功时返回以“.”分隔的IP地址串,失败时返回NULL