一个加校验码的函数

2019-07-15 12:42发布

本帖最后由 18146682946 于 2016-11-1 20:02 编辑

你们好,想问一下这段代码是什么意思,是为了干嘛
uchar buff[12]={'%','0','1','#','0','0','0','0','0','0','0',' ',};

// 函数说明:加校验码函数

void crc(void)
{
    uchar j,i=0,k;
    for(j=0;j<9;j++)
    {
     i=buff[j];
     }
k=i>>4;
if(k>=0&&k<=9)
k=k+0x30;
else if(k>=10&&k<15)
k=k+0x41;
i=i&0x0f;
if(i>=0&&i<=9)
i=i+0x30;
else if(i>=10&&i<15)
i=i+0x41;

buff[9]=k;
buff[10]=i;}








补充内容 (2016-11-2 16:04):
  程序第六行写错了,是i=i^buff[j];
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。