Joh*_*nny 5 c++ arrays boolean sizeof
bool fp[81];
Run Code Online (Sandbox Code Playgroud)
根据我的理解,fp应该使用ceil(81/8)字节,因为它是连续的.
我对么?
我该如何证明这一点?
Chu*_*dad 12
不,缓冲区的大小是实现定义的.请参阅以下标准中的引用.
因此,您可以期望的大小是81*X,其中X是bool的大小,这是实现定义的.
$ 5.3.3/1 - "sizeof运算符产生其操作数的对象表示中的字节数.操作数是表达式,未计算,或带括号的type-id.sizeof运算符不应用于具有函数或不完整类型的表达式,或者在声明所有枚举数之前的枚举类型,或者此类型的带括号的名称,或指定位字段的左值.表达式sizeof(char),sizeof(signed char)和sizeof(unsigned char)是1;应用于任何其他基本类型(3.9.1)的sizeof的结果是实现定义的.[ 注意:特别是,sizeof(bool)和sizeof(wchar_t)是实现定义的.69) ] [注意:对于字节的定义见1.7,对象表示的定义见3.9.
归档时间: |
|
查看次数: |
9599 次 |
最近记录: |