sizeof除了char以外的任何类型都有保证吗?

Woj*_*tek 1 c++

我知道在C++ sizeof(char)中保证是1,但它是唯一的情况还是有其他内置类型保证具有确切的大小?

特别是语言要求sizeof(bool) == 1还是sizeof(int) == 4要求,还是实施细节?

Die*_*ühl 6

只有明确保证大小char:sizeof(char) == 1.隐含地,这种保证也适用于signed char并且unsigned char因为其中一个要求使用相同的表示,char而另一个则由转换规则约束signed charunsigned char使用相同的大小.

除此之外,如果某些类型中存在位,并且某些类型之间存在大小关系,则只保证数字.注意,char可以具有等于或大于8的任意数量的位.