1
好吧,这是交易。我从二进制文件一次读取1个字节。然后我把它放在这样一个int变量:二进制数据整数在C
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.什么给?
尝试使用无符号整型或长整型... –
解决办法:'L = L << 8',你只计算不存储结果W /只' l << 8' – nhahtdh
哦是的!该死的!对! – digvijay91