首页 > 其他分享 >这段代码应该怎么去理解呢

这段代码应该怎么去理解呢

时间:2023-01-22 14:22:08浏览次数:36  
标签:iMask PAR ++ 代码 int 理解 countones 应该 buf

提问:

 

PARITY Parity(unsigned char* buf, int iBufLen)
{
    int countones = 0;
    int i;
    int j;
    unsigned char iMask = 0x80;
    for (i = 0; i < iBufLen; i++)
    {
        
        for (j = 0; j < 8; j++)
        {
 
            if (*buf & iMask)
            {
                countones++;
            }
        }
        if (iMask == 0)
        {
            iMask = 0x80;
        
            buf++;
        }
    }
    if (countones % 2 == 0)
    {
        return(PAR_EVEN);
    }
    else if (countones % 2 == 1)
    {
        return(PAR_ODD);
    }
    else
    {
        return(PAR_ERROR);
    }
 
    if (*buf & iMask)
    {
        countones++;
    }
    iMask = iMask >> 1;
}
 
这有点像我之前问过的代码,判断even odd那块懂了但其他的不是特别清楚
 

 

解答:

 代码没贴全,你本意是干嘛?判断一个数是奇数还是偶数么。

标签:iMask,PAR,++,代码,int,理解,countones,应该,buf
From: https://www.cnblogs.com/dituirenwu/p/17064421.html

相关文章