Python 结构看起来不准确
Python struct appears inaccurate
我有来自原始套接字的四个字节:值=0xc0ff00c0。使用格式为 L(或 I)的结构解压
struct.unpack("=L",value)
我得到 3221290944。使用
int(hexlify(value),16)
我得到3237937344,后者是正确的。我没有注意到其他格式说明符的这一点,所以我认为它一定与 Long 等较大的整数结构有关。有没有其他人注意到这一点?谢谢
你应该解压:
struct.unpack("!L",value)
由于数据是通过网络发送的,因此您应该使用网络排序解包 - !
我有来自原始套接字的四个字节:值=0xc0ff00c0。使用格式为 L(或 I)的结构解压
struct.unpack("=L",value)
我得到 3221290944。使用
int(hexlify(value),16)
我得到3237937344,后者是正确的。我没有注意到其他格式说明符的这一点,所以我认为它一定与 Long 等较大的整数结构有关。有没有其他人注意到这一点?谢谢
你应该解压:
struct.unpack("!L",value)
由于数据是通过网络发送的,因此您应该使用网络排序解包 - !