16位效验和实验程序cpp
文件大小: 23k
源码售价: 10 个金币 积分规则     积分充值
资源说明:编写一个计算机程序用来计算一个文件的16位效验和。最快速的方法是用一个32位的整数来存放这个和。记住要处理进位(例如,超过16位的那些位),把它们加到效验和中。 要求:1)以命令行形式运行:check_sum infile 其中check_sum为程序名,infile为输入数据文件名。 2)输出:数据文件的效验和 附:效验和(checksum)  原理:把要发送的数据看成二进制整数序列,并计算他们的和。若数据字节长度为奇数,则在数据尾部补一个字节的0以凑成偶数。  例子:16位效验和计算,下图表明一个小的字符串的16位效验和的计算。 为了计算效验和,发送计算机把每对字符当成16位整数处理并计算效验和。如果效验和大于16位,那么把进位一起加到最后的效验和中。 class checksum { public: checksum(); ~checksum(); void input(); //输入指令,并检查指令 string readFileStr(string dataDir); //把文件的数据转为string string sDataToHex(string sData);//把string的数据转为16进制的string string IntToHex(int inter); //10进制转为16进制 int HexToInt(string hex); //16进制转为10进制 string HexAdd(string num1,string num2); //两个16进制的数相加 string sum(); //进行校验和运算 void output(); private: string m_order; //保存命令行 string m_sdata; //保存文件数据 string m_sHex; //16进制的数据 };
本源码包内暂不包含可直接显示的源代码文件,请下载源码包。