资源简介
C++代码实现ping代码,使用visual studio 2013编译通过,屏蔽了SDL检查。
代码片段和文件信息
// ConsoleApplication1.cpp : 定义控制台应用程序的入口点。
//
#include “stdafx.h“
#include “ParseUrl.h“
#include
#include
#include
BOOL GetIpByDomainName(char *szHost char szIp[50][100] int *nCount)
{
WSADATA wsaData;
HOSTENT *pHostEnt;
int nAdapter = 0;
struct sockaddr_in sAddr;
if (WSAStartup(0x0101 &wsaData))
{
printf(“ gethostbyname error for host:\n“);
return FALSE;
}
pHostEnt = gethostbyname(szHost);
if (pHostEnt)
{
while (pHostEnt->h_addr_list[nAdapter])
{
memcpy(&sAddr.sin_addr.s_addr pHostEnt->h_addr_list[nAdapter] pHostEnt->h_length);
sprintf_s(szIp[nAdapter] “%s“ inet_ntoa(sAddr.sin_addr));
nAdapter++;
}
*nCount = nAdapter;
}
else
{
DWORD dwError = GetLastError();
*nCount = 0;
}
WSACleanup();
return TRUE;
}
void pingIp(char Ip[100])
{
ParseUrl objParseUrl;
PingReply reply;
printf(“\nPinging %s with %d bytes of data:\n\n“ Ip DEF_PACKET_SIZE);
for (int i = 0; i < 4; i++)
{
objParseUrl.Ping(Ip &reply);
printf(“Reply from %s: bytes=%ld time=%ldms TTL=%ld\n“ Ip reply.m_dwBytes reply.m_dwRoundTripTime reply.m_dwTTL);
Sleep(500);
}
}
int _tmain(int argc _TCHAR* argv[])
{
int nIpCount = 0;
char szIpList[50][100];
char szDomain[256] = { 0 };
char szIp[1024] = { 0 };
strcpy_s(szDomain “www.baidu.com“);
GetIpByDomainName(szDomain szIpList &nIpCount);
printf(“域名 : %s \n“ szDomain);
for (int i = 0; i < nIpCount; i++)
{
pingIp(szIpList[i]);
strcat_s(szIp szIpList[i]);
strcat_s(szIp “\t“);
}
printf(“\n域名解析IP列表 : %s \n\n“ szIp);
return 0;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-10-17 08:41 pingtest\
目录 0 2017-10-16 20:07 pingtest\ConsoleApplication1\
文件 1753 2016-11-01 11:06 pingtest\ConsoleApplication1\ConsoleApplication1.cpp
文件 4881 2017-10-16 20:02 pingtest\ConsoleApplication1\ConsoleApplication1.vcxproj
文件 1508 2016-11-01 10:57 pingtest\ConsoleApplication1\ConsoleApplication1.vcxproj.filters
目录 0 2017-10-16 20:07 pingtest\ConsoleApplication1\Debug\
目录 0 2017-10-16 20:07 pingtest\ConsoleApplication1\Debug\ConsoleA.A21EDFB7.tlog\
文件 2618 2017-10-16 20:07 pingtest\ConsoleApplication1\Debug\ConsoleA.A21EDFB7.tlog\cl.command.1.tlog
文件 39008 2017-10-16 20:07 pingtest\ConsoleApplication1\Debug\ConsoleA.A21EDFB7.tlog\CL.read.1.tlog
文件 1702 2017-10-16 20:07 pingtest\ConsoleApplication1\Debug\ConsoleA.A21EDFB7.tlog\CL.write.1.tlog
文件 150 2017-10-16 20:07 pingtest\ConsoleApplication1\Debug\ConsoleA.A21EDFB7.tlog\ConsoleApplication1.lastbuildstate
文件 1438 2017-10-16 20:07 pingtest\ConsoleApplication1\Debug\ConsoleA.A21EDFB7.tlog\li
文件 4302 2017-10-16 20:07 pingtest\ConsoleApplication1\Debug\ConsoleA.A21EDFB7.tlog\li
文件 648 2017-10-16 20:07 pingtest\ConsoleApplication1\Debug\ConsoleA.A21EDFB7.tlog\li
文件 1006 2017-10-16 20:07 pingtest\ConsoleApplication1\Debug\ConsoleApplication1.Build.CppClean.log
文件 3143 2017-10-16 20:07 pingtest\ConsoleApplication1\Debug\ConsoleApplication1.log
文件 41786 2017-10-16 20:07 pingtest\ConsoleApplication1\Debug\ConsoleApplication1.obj
文件 1638400 2017-10-16 20:07 pingtest\ConsoleApplication1\Debug\ConsoleApplication1.pch
文件 42240 2017-10-16 20:07 pingtest\ConsoleApplication1\Debug\ParseUrl.obj
文件 11519 2017-10-16 20:07 pingtest\ConsoleApplication1\Debug\stdafx.obj
文件 683008 2017-10-16 20:07 pingtest\ConsoleApplication1\Debug\vc120.idb
文件 233472 2017-10-16 20:07 pingtest\ConsoleApplication1\Debug\vc120.pdb
文件 4591 2017-10-16 20:07 pingtest\ConsoleApplication1\ParseUrl.cpp
文件 1399 2016-10-31 11:37 pingtest\ConsoleApplication1\ParseUrl.h
文件 1594 2016-10-31 10:50 pingtest\ConsoleApplication1\ReadMe.txt
文件 225 2016-10-31 10:50 pingtest\ConsoleApplication1\stdafx.cpp
文件 234 2016-10-31 10:50 pingtest\ConsoleApplication1\stdafx.h
文件 236 2016-10-31 10:50 pingtest\ConsoleApplication1\targetver.h
文件 524288 2017-10-17 08:41 pingtest\ConsoleApplication1.sdf
文件 1003 2016-10-31 10:50 pingtest\ConsoleApplication1.sln
文件 40448 2017-10-17 08:41 pingtest\ConsoleApplication1.v12.suo
............此处省略7个文件信息
- 上一篇:c++与Qt串口通讯
- 下一篇:嵌入式linuxC语言程序设计基础教程
相关资源
- 国际象棋的qt源代码
- C++中头文件与源文件的作用详解
- C++多线程网络编程Socket
- VC++ 多线程文件读写操作
- 利用C++哈希表的方法实现电话号码查
- 移木块游戏,可以自编自玩,vc6.0编写
- C++纯文字DOS超小RPG游戏
- VC++MFC小游戏实例教程(实例)+MFC类库
- 连铸温度场计算程序(C++)
- 6自由度机器人运动学正反解C++程序
- Em算法(使用C++编写)
- libstdc++-4.4.7-4.el6.i686.rpm
- VC++实现CMD命令执行与获得返回信息
- 白话C++(全)
- C++标准库第1、2
- 大数类c++大数类
- C++语言编写串口调试助手
- c++素数筛选法
- C++ mqtt 用法
- 商品库存管理系统 C++ MFC
- c++ 多功能计算器
- qt cmd实现ping
- C++17 In Detail
- 嵌入式QtC++编程课件
- stm32 +w5500 裸机 远程升级 自动dns pi
- 颜色识别形状识别STM103嵌入式代码
- c++ 邮件多附件群发
- c++ 透明代理(hookproxy)
- mfc 调用redis
- FTP客户端源码(c++)
川公网安备 51152502000135号
评论
共有 条评论