gpt4 book ai didi

python - 使用 struct.pack 的字节顺序 struct.unpack

转载 作者:太空宇宙 更新时间:2023-11-04 08:17:58 26 4
gpt4 key购买 nike

我正在尝试读取一些二进制数据文件。数据文件中写入了一个“重要”整数,该整数始终为 -1。我以为我可以用它来检查写入数据的机器是大端还是小端,但经过一些实验,情况似乎并非如此。具体来说:

import struct
data=struct.pack('<i',-1)
print (struct.unpack('<i',data)) #(-1,)
print (struct.unpack('>i',data)) #(-1,) ???

最佳答案

-1 的表示在 big 和 liddle endian(和二进制补码)中是相同的,即(假设 32 位)

ffffffff # big endian
ffffffff # little endian

检查一个值,如 0x01020304,或者,如果你想添加额外的检查,0x0d0aff00(0d0a 是 Windows EOL CRLFff 将打破 8 位不透明 channel ,00 将打破以 null 结尾的字符串)。

关于python - 使用 struct.pack 的字节顺序 struct.unpack,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10653425/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com