根据N4140(C++ 11工作草案):



我认为只需要8位即可包含“Unicode UTF-8编码形式的8位代码单元”的所有成员。也不需要更多位来包含“基本执行字符集”的所有成员吗?为什么在许多实现中CHAR_BIT为8?

最佳答案

基本执行集包含96个字符,其中一个不在ASCII字符集之外。 UTF-8的前127个字符是ASCII。

因此,不,基于基本执行集字符,char不必大于8位。

09-10 14:32