C ++特别版的第601页说......
In <ctype.h> and <cctype>, the standard library provides a set of useful functions for dealing with ASCII and similar character sets.
Unicode会属于这个“类似字符集”类别吗?
答案 0 :(得分:0)
Unicode支持一直是该语言的一个主要难点。您必须为非ANSI设置区域设置并使用wchar_t
变体。 wchar_t
的确切含义因实施而异。 E.g:
setlocale(LC_CTYPE, "en_ca.UTF-8");
查看locales上的Unicode Consortium页面。
答案 1 :(得分:0)
来自<cctype>
的功能实际上无法用于支持Unicode编码。
我认为关于类似字符集的注释与8位字符编码系列严格相关,例如EBCDIC。
但是,请注意,将ASCII视为Unicode的子集(或变体)是正确的。如果使用Unicode的UTF-8编码,则前128个代码点与128个ASCII字符相同,前256个字符与Latin-1相同。意思是,所有ASCII都被视为有效的UTF-8。
答案 2 :(得分:0)
这实际上取决于实施。 C ++当然允许它,但不强制要求它。您需要CHAR_BIT
&gt; = 20.实际上,没有实现这样做。 wchar_t
和相应的<cwctype>
标题通常支持Unicode。