C++:为什么bool有8位长?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (89)

在C++中,我想知道为什么bool类型是8位长(在我的系统上),其中只有一个位足够容纳布尔值?

提问于
用户回答回答于

因为每个C++数据类型都必须是可寻址的。

不能创建指向单个位的指针

用户回答回答于

内存是字节可寻址的。如果不移动或掩盖从内存中读取的字节,就不能寻址一个位。我想这是一个很大的原因。

扫码关注云+社区

领取腾讯云代金券