求大神将下面这个c代码改成c#的。。。跪谢

问题描述

求大神将下面这个c代码改成c#的。。。跪谢

const WORD wCRCTalbeAbs[] =
{0x0000, 0xCC01, 0xD801, 0x1400, 0xF001, 0x3C00, 0x2800, 0xE401, 0xA001, 0x6C00, 0x7800, 0xB401, 0x5000, 0x9C01, 0x8801, 0x4400, };
WORD CRC16_2(BYTE* pchMsg, WORD wDataLen)
{ WORD wCRC = 0xFFFF; WORD i;BYTE chChar;
for (i = 0; i < wDataLen; i++)
{ chChar = *pchMsg++;
wCRC = wCRCTalbeAbs[(chChar ^ wCRC) & 15] ^ (wCRC >> 4);
wCRC = wCRCTalbeAbs[((chChar >> 4) ^ wCRC) & 15] ^ (wCRC >> 4);
}
return wCRC;
}

解决方案

word在C#中是unsigned short
指针用数组下标代替,别的都差不多。

解决方案二:

你的WORD是什么类型的?几个字节,你要说清楚啊,要不然让人家怎么给你转换?不同类型,在C#中的对应类型也是不一样的啊

解决方案三:

这个WORD定义的时候需要定义为unsigned int int 是32位的

解决方案四:

int []wCRCTalbeAbs =new int[]{0x0000, 0xCC01, 0xD801, 0x1400, 0xF001, 0x3C00, 0x2800, 0xE401, 0xA001, 0x6C00, 0x7800, 0xB401, 0x5000, 0x9C01, 0x8801, 0x4400, };
int CRC16_2(BYTE* pchMsg, int wDataLen)
{ int wCRC = 0xFFFF; int i;byte chChar;
for (i = 0; i < wDataLen; i++)
{ chChar = *pchMsg++;
wCRC = wCRCTalbeAbs[(chChar ^ wCRC) & 15] ^ (wCRC >> 4);
wCRC = wCRCTalbeAbs[((chChar >> 4) ^ wCRC) & 15] ^ (wCRC >> 4);
}

时间: 2024-12-30 03:22:25

求大神将下面这个c代码改成c#的。。。跪谢的相关文章

数据库-小白 求大神解答 eclipse连接mysql语句改成连接sql2008

问题描述 小白 求大神解答 eclipse连接mysql语句改成连接sql2008 package library; import javax.swing.*; import java.sql.*; public class Database{ private String url = "jdbc:mysql://localhost/library";// //private String url = "jdbc:mysql://localhost:3306/library&

求大神帮忙看看这段代码的问题在哪,求修改一下

问题描述 求大神帮忙看看这段代码的问题在哪,求修改一下 10C 这是题目,代码如下: #include#includeusing namespace std; class People{public: People(const string&NOconst string&nameconst string&sexconst string&IDNOconst string&Birthday); virtual void show()=0;protected: strin

设计-求大神帮我看一下代码哪里有问题,这是用verilog写的sdram的数据模块

问题描述 求大神帮我看一下代码哪里有问题,这是用verilog写的sdram的数据模块 `timescale 1ns / 1ps ////////////////////////////////////////////////////////////////////////////////// // Company: // Engineer: // // Create Date: 12:07:50 04/20/2016 // Design Name: // Module Name: datage

软件开发-求大神帮我看看C++代码

问题描述 求大神帮我看看C++代码 以下是我的.h头文件: #include <vector> #include<iostream> #include <iomanip> #include <math.h> #define M_PI 3.14159265359 ////////**************定义目标状态***************//////// typedef struct strTargetState//笛卡尔坐标系位置 { double

c++基础c++-求大神写一段c++代码,做题能做对但是自己写代码就漏洞百出,求大神指导

问题描述 求大神写一段c++代码,做题能做对但是自己写代码就漏洞百出,求大神指导 年龄 Age姓名 char name公有成员函数: 构造函数 带参数的构造函数Student(int mchar); 不带参数的构造函数 Student() 析构函数 -Student() 改变数据成员值函数 void SetMemer(int mchar *) 获取数据成员函数 int GetAge() char * GetName()要求:在main()中定义一个有3个元素的对象数组并分别初始化,然后输出对象数

为什么需要标示符,求大神。在第三行代码,编译时出错。

问题描述 为什么需要标示符,求大神.在第三行代码,编译时出错. class Point{ double x,y,z; Point(double_x,double_y,double_z ) { x=_x; y=_y; z=_z; } void setX(double _x){ x=_x; } void setY(double _y){ y=_y; } void setZ(double_z){ z=_z; } double getDistance(Point P){ return(x-p.x)*(x

jsp-JSP传给action的是字符串类型,转换数据类型,让getlist()接收,求大神帮帮忙写下代码

问题描述 JSP传给action的是字符串类型,转换数据类型,让getlist()接收,求大神帮帮忙写下代码 JSP传给action的是字符串类型,怎么转换数据类型,然后让getlist()接收,求各位大神帮帮忙写下代码~ 如果能够给解释一下,那就千恩万谢啦 解决方案 可以通过强制转换在前面加上int 解决方案二: gongWenLeiBieList = dao.getList(Integer.parseInt(mingCheng));

c语言-求大神帮帮看看这段代码那里出错了。谢谢

问题描述 求大神帮帮看看这段代码那里出错了.谢谢 刚刚学习,什么都不懂,今天第一次练手,却出现错误,我看了半小时楞是没看出来哪里出错了,求大家帮帮看看.谢谢了. 解决方案 要使用system()函数,就得加头文件,注意你源代码文件保存的后缀名为.c文件,main()函数下面的第一行有个分号 ; 解决方案二: 第一行system那行,最后加分号 解决方案三: [VB.NET]大家看看,这段代码出错了,要怎么改,谢谢,,在线等,当天结贴!!!!!! 解决方案四: system("color 5&qu

jquery-见鬼,太奇怪了,求大神解答这段js代码怎么得不到预期结果。

问题描述 见鬼,太奇怪了,求大神解答这段js代码怎么得不到预期结果. 本来要写一个滚动条到底部自动加载的功能,if里面的判断表达式结果确实是true但是if里面的代码被执行5次.设置全局变量,return false.....都没法解决这个问题.求js大神解答.该怎么写才合适. $(window).scroll(function(){ if (($(document).height())==($(window).height()+$(document).scrollTop())) { alert