gpt4 book ai didi

python 结构,不需要的额外字节

转载 作者:行者123 更新时间:2023-11-28 22:02:02 24 4
gpt4 key购买 nike

我正在使用 python 编写一个位图文件。我创建位图 header 的代码是:

pack('bblll', 66, 77, fileLength, 0, 122)

除非我的数学有误,(其实不是)这应该会创建一个 14 字节长的字节串。

b = 字符(1 字节)l = long(4字节)

1 + 1 + 4 + 4 + 4 = 14

但是,问题是,我收到了 2 个额外的字节;假设我的文件长度为 142,我将收到以下内容(十六进制):

42 4D 00 00 8E 00 00 00 00 00 00 00 7A 00 00 00

2 个额外位在偏移量 0x2 和 0x3 处为空。他们来自哪里?我该如何摆脱它们?它正在破坏我的图像。

最佳答案

它填充到四字节(字)边界,因此 long 从自然偏移量开始(即偏移量是四的倍数),使用 = 前缀(或任何其他可能的字节顺序前缀)来防止这种情况。

More info on this documentation page.

关于python 结构,不需要的额外字节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12134806/

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