C++11§3.9.1声明为字符(char)的对象应足够大,以存储实现的基本字符集的任何成员。
实现的基本字符集表示哪个字符集?基本源字符集还是执行字符集?
发布于 2013-11-14 10:42:22
从技术上讲,它是由实现定义的。实际上,char是8位,默认情况下是有符号的或无符号的。同样在实践中,US ASCII已经形成了您可能遇到的常见实现中的最低公分母。
这只是最小的公分母。它忽略宽字符(即wchar_t)或其他超出US ASCII码的编码。
该标准允许广泛的实现,包括char大于8位的实现。它们并不是特别常见。
需要注意的另一件事是,源字符集和执行字符集不需要匹配。与自托管编译器相比,交叉编译器(例如嵌入式系统)更有可能出现这种情况。再说一次,我不认为标准将两者联系在一起。
https://stackoverflow.com/questions/19968214
复制相似问题