两个16位的数字怎么变成32位整数就像C语言中的union其中一个16位数占32位的高16位,另外一个是低16位,不是i
两个16位的数字怎么变成32位整数
就像C语言中的union
其中一个16位数占32位的高16位,另外一个是低16位,
不是 int1 | int2 这种的
[解决办法]
a << 16 + b
=>
(a << 16) + b
仔细看了下,漏了一个括号。在a>32768的时候,符号位没有正确处理。
a * 65536 + b 则在任何情况下都是和你的一样的。
