欢迎来到天天文库
浏览记录
ID:6555022
大小:44.00 KB
页数:5页
时间:2018-01-17
《常用各种数据校验方法源代码》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、常用各种数据校验方法源代码BorlandC++Builder5.0//-----------------------------------------------------------------------------//定义数据类型缩写形式typedefunsignedcharuchar;//无符号字符typedefunsignedshortushort;//无符号短整型typedefunsignedlongulong;//无符号长整型typedefunsignedintuint;//无符号整型typedefDynamicArrayTByteDynArray;//
2、动态定义字节数组//CRC8位校验ucharCRC8Valid(constuchar*puchData,intlen){ucharcrc8=0;while(len--){crc8=crc8^(*puchData++);}returncrc8;}//---------------------------------------------------------------------------//CRC8位校验ucharCRC8Valid(constTByteDynArraypuchData,intlen){ucharcrc8=0;intindex=0;while(len--){c
3、rc8=crc8^puchData[index++];}returncrc8;}//---------------------------------------------------------------------------//和校验ucharSumValid(constuchar*puchData,intlen){ucharcrc8=0;while(len--){crc8=crc8+(*puchData++);}returncrc8;}//-------------------------------------------------------------------
4、--------//和校验ucharSumValid(constTByteDynArraypuchData,intlen){ucharcrc8=0;intindex=0;while(len--){crc8=crc8+puchData[index++];}returncrc8;}//---------------------------------------------------------------------------//从第index位开始进行校验ucharSumValid(constuchar*puchData,intindex,intlen){ucharcrc8=0;
5、puchData+=index;while(len--){crc8=crc8+(*puchData++);}returncrc8;}//---------------------------------------------------------------------------//从第index位开始进行校验ucharSumValid(constTByteDynArraypuchData,intindex,intlen){ucharcrc8=0;intindexs=0;indexs+=index;while(len--){crc8=crc8+puchData[indexs++
6、];}returncrc8;}//---------------------------------------------------------------------------//CRC16校验ushortCRC16Valid(constTByteDynArraybuffer,intlen){ushortcrc=0,tmp;intindex=0;while(len--){tmp=buffer[index++];crc=crc^(tmp<<8);for(inti=0;i<8;i++){if(crc&0x8000)crc=(crc<<1)^0x1021;elsecrc<<=1;}
7、}crc=(crc>>8)
8、(crc<<8);return(crc);}//---------------------------------------------------------------------------//CRC16校验ushortCRC16Valid(constuchar*buffer,intlen){ushortcrc=0,tmp;while(len--){tmp=*buffer++;crc=crc^(tmp<<8);for(i
此文档下载收益归作者所有