ping命令的c語言實現
1. 如何用C語言調用ping命令
C語言調用ping命令,參考代碼:
#include <windows.h>
#include <stdio.h>
#include <string.h>
char YN(int k) {
    FILE *f;
    char fn[40];
    char ln[80];
    char yn;
    int n;
    yn='N';
    sprintf(fn,"d:\\ping%d.txt",k);
    f=fopen(fn,"r");
    if (NULL!=f) {
        n=0;
        while (1) {
            if (NULL==fgets(ln,80,f)) break;//
            if (strstr(ln,"ms ")) {
                yn='Y';
                break;//
            }
            n++;
            if (n>=4) break;//
        }
        fclose(f);
    }
    return yn;
}
void main(int argc,char **argv) {
    char cmdstr[256];
    int i;
    int IP[3];
    char c;
    if (argc<2) {
    USAGE:
        printf("Usage example:\n    %s 192.168.60.\nto test 192.168.60.1-254\n",argv[0]);
        return;
    }
    if (4==sscanf(argv[1],"%d.%d.%d%c",&IP[0],&IP[1],&IP[2],&c)) {
        if (0<=IP[0] && IP[0]<=255
         && 0<=IP[1] && IP[1]<=255
         && 0<=IP[2] && IP[2]<=255
         && '.'==c) {
            for (i=1;i<255;i++) {
                sprintf(cmdstr,"cmd /c ping %s%d -n 1 -w 1000 >d:\\ping%d.txt",argv[1],i,i);
                WinExec(cmdstr,SW_HIDE);
            }
            Sleep(3000);
            for (i=1;i<255;i++) {
                printf("%c %s%d\n",YN(i),argv[1],i);
            }
            Sleep(3000);
            WinExec("cmd /c del /q d:\\ping*.txt",SW_HIDE);
        } else goto USAGE;
    } else goto USAGE;
}
2. C語言編寫一個調用PING命令程序怎麼寫請給個完整的代碼
用system函數簡單調用ping命令:
#include "stdio.h" 
void main() 
{ 
char ip[15]; 
char command[50];
// printf("enter IP please: ");
scanf("%s",&ip[0]); //輸入要ping的ip
sprintf(command,"ping %s",ip); 
system(command); 
exit(0);
}
3. 請教如何用C語言實現ping命令
如果你想獲取到Ping的結果
那麼直接system 調用ping或者popen調用即可。 
如果想自己實現,就需要用socket自行發Ping包,並獲取回應
這個就很麻煩了。 建議可以看一下gnu ping的源碼,或者busybox的ping部分代碼。
4. 如何用C語言調用ping命令
#include<stdlib.h>
intmain(void){
charcmd_buf[100];
system("ping192.168.1.1");/*僅為示範調用,具體情況具體對待*/
sprintf(cmd_buf,"ping%d.%d.%d.%d",192,168,1,1);
system(cmd_buf);/*ping192.168.1.1*/
return0;
}
