关于字符串编码的问题

大板牙花生 2021-02-08 10:04:39
经常会遇到在处理中文字符串的时候出现乱码。

有没有系统的知识讲解下为什么会出现乱码,以及C++各类string ,wstring,char 等相关跟乱码之间的关系?网上搜了很多找不到合适的链接

同样JAVA下如何处理,有没有类似的书籍?
...全文
48 点赞 收藏 3
写回复
3 条回复
xian0-666 02月09日
如果要深究,可以百度Unicode\utf-8/16\ansi等的区别,我觉得编码格式是非常不好的一个东西,看以后能不能改善
回复 点赞
xian0-666 02月09日
就c++的话,如vs,他的默认编码是Unicode,在属性页-常规-字符集里可以看见,那么你用字符串,特别是中文的时候就得用_T(""),L""等等,用宽字符。如果用多字节字符串,就不用了。
回复 点赞
Simple-Soft 02月09日
出现乱码一般是当前系统不支持中文显示导致的,所以最好在代码中使用unicode字符串,char和string是ansi字符串,WCHAR和wstring是unicode字符串。使用unicode字符串基本上可以解决大部分情况的乱码问题,主要还是看乱码的具体情况。
回复 点赞
发动态
发帖子
C++ 语言
创建于2007-09-28

3.1w+

社区成员

24.8w+

社区内容

C++ 语言相关问题讨论,技术干货分享
社区公告
暂无公告