char,wchar_t,char8_t,char16_t,char32_t
作者:互联网
char:8位1字节可以存储ASCII字符集和ISO-8859字符集,并可以采用多字符存储Shift-JIS和UTF-8编码的Unicode字符集
wchar_t:宽字符,文档中解释为,大到可以支持所有字符编码。在windows上占16位2字节采用UTF-16编码,在其他支持Unicode的系统上占32位4字节
在C++11引入char16_t和char32_t,在C++20中引入char8_t
char16_t:为UTF-16定义的字符表示类型 无符号16位 前缀u
char32_t:为UTF-32定义的字符表示类型 无符号32位 前缀U
在进行字符串编码时,如果确定了字符长度和符号特征将很有帮助,因此C++11增加了这两种类型
(在不同编译器中前缀可能不同,visual studio中前缀为L)
char8_t:为UTF-8定义的字符表示类型
(根据在网上搜索到的,老代码如果启用新的char8_t将会出现很多兼容性问题)
具体可以看https://github.com/tahonermann/char8_t-remediation
标签:char8,UTF,前缀,16,C++,char,字符,wchar 来源: https://blog.csdn.net/xiangyuhaoaizcm/article/details/120694065