Qwerrrgg 2023-03-28 04:59 采纳率: 100%
浏览 21
已结题

C++代码改成C# 求帮

C++代码改成C#
测试数据cc760106021400ddee,算出来是8f


比如有一个SendByte[16],求前15字节的CRC码
unsigned char  CRC8_Tab(unsigned char ky)
{
    unsigned char  ki;
    for(ki=0;ki<8;ki++)
    {
        if(ky&0x80)
            {
                ky*=2;
                ky^=0x31;
            }
        else
            {
                ky*=2;
            }
    }
    return ky;
}
unsigned char Get_CRC_Result(uchar * kcr)
{
    unsigned char gt1,gt2;
    gt2=0;
    for(gt1=0;gt1<15;gt1++)
    {
        gt2=CRC8_Tab((*kcr)^gt2);
        kcr++;
    }
    return gt2;
}
Void main(void)
{
unsigned  char SendByte[16];
unsigned char chx,km;
For(chx=1;chx<16;chx++)
{
   SendByte[chx]=chx+5;
}
Km= Get_CRC_Result(SendByte);//取CRC码
SendByte[15]=km;
}



展开全部

  • 写回答

2条回答 默认 最新

  • Vayne16 2023-03-28 05:05
    关注

    该回答引用GPT:
    C#代码:

    public static byte CRC8_Tab(byte ky)
    {
        byte ki;
        for (ki = 0; ki < 8; ki++)
        {
            if ((ky & 0x80) == 0x80)
            {
                ky *= 2;
                ky ^= 0x31;
            }
            else
            {
                ky *= 2;
            }
        }
        return ky;
    }
    
    public static byte Get_CRC_Result(byte[] kcr)
    {
        byte gt1, gt2;
        gt2 = 0;
        for (gt1 = 0; gt1 < 15; gt1++)
        {
            gt2 = CRC8_Tab((kcr[gt1]) ^ gt2);
        }
        return gt2;
    }
    
    public static void Main()
    {
        byte[] SendByte = new byte[16];
        byte chx, km;
        for (chx = 1; chx < 16; chx++)
        {
            SendByte[chx] = (byte)(chx + 5);
        }
        km = Get_CRC_Result(SendByte);//取CRC码
        SendByte[15] = km;
    }
    

    如还有疑问,可留言帮助解决。

    展开全部

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    Qwerrrgg 2023-03-28 06:15

    gt2 = CRC8_Tab((kcr[gt1]) ^ gt2); 这句报错,提示错误 2 参数“1”: 无法从“int”转换为“byte” 错误 1 与“WindowsFormsApplication1.Form1.CRC8_Tab(byte)”最匹配的重载方法具有一些无效参数 再帮忙看看

    回复
查看更多回答(1条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 4月5日
  • 已采纳回答 3月29日
  • 创建了问题 3月28日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部