【发布时间】:2011-02-08 11:49:00
【问题描述】:
位结构字段的最大位宽是多少?
struct i { long long i:127;}
我可以在 struct 中定义一个位域,位域的大小最多为 128 位、256 位或更大吗?有一些超宽向量类型,如 sse2(128 位)、avx1/avx2(256 位)、avx-512(下一个 Xeon Phis 为 512 位)寄存器;还有像 gcc 中的 __int128 这样的扩展。
【问题讨论】:
-
对于长位字段,您可能需要调查
中声明的 std::bitset。至于位限制,我建议首先阅读您的编译器文档以了解限制,因为这些限制通常比语言标准强加的更严格。 -
@Thomas Matthews,最大位字段大小的一般限制是什么?标准是否定义了一些上限?
标签: c++ c struct c99 bit-fields