【发布时间】:2011-09-24 22:42:02
【问题描述】:
我有array^ byteArray,我需要提取 Little Endian 序列中的字节以制作无符号短裤和整数。我已经尝试了以下我能想到的所有组合,因此寻求帮助。
int x = UInt32(byteArray[i]) + (UInt32)(0x00ff) * UInt32(byteArray[i + 1]);
int x = UInt32(byteArray[i]) + UInt32(0x00ff) * UInt32(byteArray[i + 1]);
int x = byteArray[i] + 0x00ff * byteArray[i + 1];
问题是最低有效字节(在 i+1 处)我知道它是 0x50,但生成的 short/int 将低字节报告为 0x0b。高字节不受影响。
我认为这是一个标志错误,但我似乎无法修复它。
【问题讨论】:
标签: c++ arrays unsigned unsigned-char