資源簡(jiǎn)介
用C語言如何設(shè)計(jì)PING程序 ping的原理
代碼片段和文件信息
//?ping.cpp?:?Defines?the?entry?point?for?the?console?application.
//
#include?“stdafx.h“
#include
#include
#include
#include
#include
#pragma?comment(lib“WS2_32“)
typedef?struct?IPHeader?{
??UCHAR??iph_verlen;??//?Version?and?length?
??UCHAR??iph_tos;??//?Type?of?service?
??USHORT??iph_length;??//?Total?datagram?length?
??USHORT??iph_id;??//?Identification?
??USHORT??iph_offset;??//?Flags?fragment?offset?
??UCHAR??iph_ttl;??//?Time?to?live?
??UCHAR??iph_protocol;??//?Protocol?
??USHORT??iph_xsum;??//?Header?checksum?
??ULONG??iph_src;??//?Source?address?
??ULONG??iph_dest;??//?Destination?address?
}?IPHeader;?
USHORT?checksum(USHORT?*buffint?size)
{
unsigned?long?cksum?=?0;
//將數(shù)據(jù)以字單位累加到cksum?中
while(size?>?1)
{
cksum?+=?*buff++;
size?-=?sizeof(USHORT);
}
//如果為奇數(shù),將最后一個(gè)字節(jié)擴(kuò)展為雙字,再累加到cksum中
if(size)
{
cksum?+=?*(UCHAR*)?buff;
}
//將cksum的高16位和低16位相加,去反后得到校驗(yàn)和
????cksum?=?(cksum?>>
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件????????731??2008-12-08?16:43??ping\ping.h
?????文件????????667??2008-12-26?18:24??ping\StdAfx.h
?????文件???????1196??2008-12-26?18:24??ping\ReadMe.txt
?????文件???????4512??2008-12-26?18:24??ping\ping.dsp
?????文件????????533??2008-12-26?18:24??ping\ping.dsw
?????文件??????58368??2009-01-02?17:20??ping\ping.ncb
?????文件???????1308??2008-12-29?13:32??ping\ping.plg
?????文件????????311??2008-12-26?18:40??ping\StdAfx.cpp
?????文件???????3676??2008-12-29?13:32??ping\ping.cpp
?????文件??????53760??2009-01-02?17:20??ping\ping.opt
?????文件?????164864??2009-01-02?16:38??ping\Debug\vc60.idb
?????文件?????187100??2008-12-26?18:40??ping\Debug\ping.pch
?????文件?????258048??2008-12-29?13:32??ping\Debug\vc60.pdb
?????文件?????167984??2008-12-29?13:32??ping\Debug\ping.exe
?????文件?????443392??2008-12-29?13:32??ping\Debug\ping.pdb
?????文件??????11439??2008-12-26?18:40??ping\Debug\StdAfx.obj
?????文件?????198044??2008-12-29?13:32??ping\Debug\ping.ilk
?????文件??????50290??2008-12-29?13:32??ping\Debug\ping.obj
?????目錄??????????0??2009-01-03?15:37??ping\Debug
?????目錄??????????0??2009-01-03?15:37??ping
?????文件?????123904??2009-06-18?19:44??2008552257391610.doc
-----------?---------??----------?-----??----
??????????????1730127????????????????????21
評(píng)論
共有 條評(píng)論