Python结构包()/calcsize()

2024-09-24 20:35:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我想在一个字节后面加一个long。我的缓冲区只能包含9个元素。为什么我不能把它们放进缓冲区?在

>>> from struct import *
>>> calcsize('qB')
9
>>> calcsize('Bq')
12

它以不同的方式返回。为什么会这样?在

顺便说一下,我使用的是python2.7.3。在


Tags: fromimport元素字节方式structlong缓冲区
1条回答
网友
1楼 · 发布于 2024-09-24 20:35:00

在第二个例子中,struct.calcsize假设字节后面有3个字节的填充,这样long long可以从4字节的边界开始。在

如果不指定填充,则会看到它们是等效的:

>>> calcsize ('Bq')
12
>>> calcsize('=Bq')
9

相关问题 更多 >