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_t2字节代码单元.
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 次 |
| 最近记录: |