c程序获取ping结果
时间: 2024-09-06 14:01:42 浏览: 38
c# Ping程序
在C语言中,获取ping的结果通常需要利用系统的ping命令或者是第三方库。一种常见的方法是通过调用操作系统提供的API函数,例如在Linux系统上可以使用`system()`函数执行ping命令,并从标准输出获取返回码来判断是否成功。以下是一个简单的示例:
```c
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main() {
char cmd[100];
sprintf(cmd, "ping -c %d %s", count, host); // count是你想发送的ping包数量,host是要ping的目标地址
FILE *pipe = popen(cmd, "r"); // 执行ping命令
if (!pipe) {
printf("Failed to execute ping.\n");
return 1;
}
char buffer[128];
while (fgets(buffer, sizeof(buffer), pipe)) { // 读取ping的结果行
printf("%s", buffer);
}
pclose(pipe); // 关闭管道
// 检查返回码来了解ping的成功情况
int exitCode = WEXITSTATUS(getexitstatus(pipe));
if (exitCode == 0)
printf("Ping successful.\n");
else
printf("Ping failed with code %d.\n", exitCode);
return 0;
}
```
阅读全文