• 大小: 1KB
    文件类型: .c
    金币: 2
    下载: 1 次
    发布日期: 2021-06-22
  • 语言: C/C++
  • 标签: C语言  校验和  

资源简介

效验和(checksum)  原理:把要发送的数据看成二进制整数序列,并计算他们的和。若数据字节长度为奇数,则在数据尾部补一个字节的0以凑成偶数。  例子:16位效验和计算,下图表明一个小的字符串的16位效验和的计算。为了计算效验和,发送计算机把每对字符当成16位整数处理并计算效验和。如果效验和大于16位,那么把进位(carry)一起加到最后的效验和中。 H e l l o w o r l d . 4865 6C6C 6F20 776F 726C 642E 4865+6C6C+6F20+776F+726C+642E+carry=71FC

资源截图

代码片段和文件信息

/* Note:Your choice is C IDE */

/**************************************/
/*            广州大学                */
/*          05软件工程1班             */
/*          captain_black             */
/*                                    */
/*           2008.10.6                */
/**************************************/
//

#include “stdio.h“

int main(int argc char* argv[])
{
unsigned int fdata=0c=0H=0L=0;

unsigned int sum=0;

unsigned int carry=0;
FILE *fp;

if(argv[1]==‘\0‘) {printf(“缺少文件名请输入要检验的文件名!“);return 0;}

printf(“\n---------------------------------------------\n“);
if((fp=fopen(argv[1]/*运行参数*/“r+“))==NUL

评论

共有 条评论