【发布时间】:2015-09-25 15:30:18
【问题描述】:
标准 C++ [3.9.1-1] 这么说
对于无符号字符类型,值表示的所有可能的位模式都表示数字。
标准 [18.3.2.4-(comment 197)] 还说 unsigned char 的最大值相当于 C 中的 UCHAR_MAX,在 C 标准 [5.2.4.2.1] 中定义为 255。那么这是否意味着 C++ 中 unsigned char 类型的大小正好是 8 位?
【问题讨论】:
-
不一定。
UCHAR_MAX的最低最大值为 255,即 8 位char。char可以是任意大小,只要它只使用 1 个字节即可。 -
@owacoder 否,sizeof(char) 保证为 1。但是,1 字节可能大于 8 位。 :)
标签: c++