哪位大侠帮助一下,看了ping的源码,太复杂了,并且可能导致进程异常退出
如果不管performance的话,直接调system()好了。返回值不是0的时候,就是ping失败了。
这个程序还可以改进,用 spawnlv() 代替 system(),会好一点。
不过,你真的只要确认某个IP地址能不能应答吗?也可能那个IP地址虽然应答,但你想要联接的服务器不在运行喔。
#include <stdio.h>
int main(int argc, char **argv)
{
int ret;
char cmd[1024];
sprintf(cmd, "ping -n -c1 %s", argv[1]);
ret = system(cmd);
printf("return value is %d\n", ret);
return 0;
}