eca*_*mur 31
wchar_t
用于以固定宽度,多字节编码表示文本; 因为wchar_t
它通常是2个字节大小,所以它可以用来表示任何2字节编码的文本.它还可用于表示可变宽度多字节编码中的文本,其中最常见的是UTF-16.
wchar_t
在大小为4字节的平台上,它可以用来表示使用UCS-4(Unicode)的任何文本,但是因为在大多数平台上它只有2个字节,它只能用可变宽度编码表示Unicode(通常是UTF-16) .使用char
可变宽度编码(例如UTF-8或GB 18030)更为常见.
关于唯一wchar_t
广泛使用的现代操作系统是Windows; 这是因为Windows在扩展到U + FFFF之前采用了Unicode,因此固定宽度的2字节编码(UCS-2)似乎是合理的.现在UCS-2不足以代表整个Unicode,因此Windows使用UTF-16,仍然使用wchar_t
2字节代码单元.
wchar_t
是一个广泛的角色.它用于表示需要更多内存来表示它们而不是常规字符的字符char
.例如,它在Windows API中广泛使用.
但是,a的大小wchar_t
取决于实现,并且不能保证大于char
.如果您需要支持大于8位的特定形式的字符格式,您可能需要转向char32_t
并char16_t
保证分别为32位和16位.
wchar_t
当您需要存储代码大于255的字符时(它具有比char
可存储的值更大的值),则使用此选项.
char
可以采用256个不同的值,这些值对应于ISO拉丁表中的条目.另一方面,宽字符可以占用超过65536个值,这些值对应于Unicode值.它是最近的国际标准,允许对几乎所有语言和常用符号进行字符编码.
归档时间: |
|
查看次数: |
19801 次 |
最近记录: |