【发布时间】:2023-02-10 13:41:36
【问题描述】:
标准 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++