好的,这就是交易。我一次从二进制文件中读取 1 个字节。然后我把它放在一个像这样的 int 变量中:
l = *rbyte;
l <<8;
<read another byte>
l |=*rbyte;
l <<8;
<read another byte>
l |=*rbyte;
l <<8;
<read another byte>
l |=*rbyte;
现在这应该可以正常工作了,对于像 00 00 00 0D 这样的二进制数据,它返回 13,对于 6 和 9 也是如此。但是对于二进制数据 00 00 80 00,它只是返回 128。当它实际上应该返回 32768 。 是什么赋予了?