- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
已关注 the manual about struct.calcsize
truct.calcsize(fmt)¶
Return the size of the struct (and hence of the string) corresponding to the given format
但我不明白为什么 struct.calcsize('hll') 不是 struct.calcsize('h') 加两倍的 struct.calcsize('l')。见下文。有什么想法吗?
In [216]: struct.calcsize('hll')
Out[216]: 24
In [217]: struct.calcsize('h')
Out[217]: 2
In [218]: struct.calcsize('l')
Out[218]: 8
最佳答案
出于效率目的,我认为这是由于填充元素比机器字短。
访问机器字长倍数的内存地址(例如 64 位机器为 8 个字节)往往会更快。因此,除非另有说明,C 编译器将填充其结构。 struct
模块将为互操作性执行相同的操作。
看起来它是可配置的,具体取决于您计划如何使用它。
关于python - struct.calcsize (python) 实际计算什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34729532/
我想打包一个字节,后跟一个长整型。我的缓冲区只能包含 9 个元素。为什么我不能将它们打包到缓冲区中? >>> from struct import * >>> calcsize('qB') 9 >>>
>>>import struct >>>size_a = struct.calcsize('10s') size_a = 10 >>>size_b = struct.calcsize('iii') s
我在阅读 scikit-learn 的安装说明时偶然发现了这一点。检查您的系统架构,是 32 位还是 64 位 具体是什么意思? P 格式说明符是什么意思?它在 32 位系统和 64 位系统中有何不同
我不知道为什么这不起作用。我想使用 struct modul 读取 1 个整数(双字)和 4 个四字。这代表 4 + 4 * 8 = 36 字节,但 python 给了我这个: >>> import
已关注 the manual about struct.calcsize truct.calcsize(fmt)¶ Return the size of the struct (and hen
如果我看这里:https://docs.python.org/2/library/struct.html在第 7.3.2.2 节。格式字符,标准大小为 6 的 Python 类型整数没有格式字母。我尝
它一直告诉我在 float calcSize() 函数中运行的参数太少,即使我发送了其中的所有 4 个变量。我的另一个问题是,我的程序有意义吗? #include #include #define
我是一名优秀的程序员,十分优秀!