gpt4 book ai didi

c++ - 数组 C++ 中每个 boolean 值 1 位

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:50:12 26 4
gpt4 key购买 nike

bool fp[81];

根据我的理解,fp 应该使用 ceil(81/8) 字节,因为它是连续的。

我说的对吗?

我怎样才能证明这一点?

最佳答案

不,缓冲区的大小是实现定义的。请引用以下标准中的引述。

因此,您可以期望的大小是 81 * X,其中 X 是 bool 的大小,它是实现定义的。

$5.3.3/1 - “sizeof 运算符产生其操作数的对象表示中的字节数。操作数是一个未计算的表达式,或者是带括号的类型 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。 ]

关于c++ - 数组 C++ 中每个 boolean 值 1 位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4049156/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com