如何将以下C++代码转换成C#代码

unsignedchar*uk=(unsignedchar*)StartApp;unsignedintsize=FirmwareBytes;unsignedintbt;u... unsigned char *uk = (unsigned char *) StartApp;
unsigned int size = FirmwareBytes;
unsigned int bt;
unsigned short ocrc = 0x0000;
while(size--){
bt = *uk++;
ocrc = ocrc ^ (bt <<8 );
if(ocrc & 0x8000) { ocrc<<1;ocrc ^= 0x1021 ;}
else ocrc <<= 1;
}
展开
 我来答
梅2江
推荐于2016-06-26 · 超过53用户采纳过TA的回答
知道小有建树答主
回答量:153
采纳率:100%
帮助的人:83.9万
展开全部
首先StartApp是什么类型还不清楚,但是后边代码如下:
char[] uk=StartApp.ToCharArray();//StartApp类型不同,转换也不同,暂且为String
UInt32 size=FirmwareBytes;
UInt32 bt=0;
UInt16 ocrc=0x0000;
int i=0;
while ((size--)>0)
{
bt = uk[i++];
ocrc = (UInt16)(ocrc ^ (bt << 8));
if ((ocrc & 0x8000)!=0) { ocrc=(UInt16)(ocrc << 1); ocrc ^= 0x1021; }
else ocrc <<= 1;
}
追问
首先会读取一个文件的byte[]传进来;这个startApp是指的这个byte[]的起始位置;
追答
那就不要转换为char[]就行了,直接用就可以了
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式