c++utf8无法输出中文字符串

输出和代码如图C++标准是C++11求解为什么UTF8中文字符串为乱码请不要给我说用wchar_t/char16_t/char32_t这里是utf8不是utf16(wch... 输出和代码如图C++标准是C++11求解为什么UTF8中文字符串为乱码
请不要给我说用wchar_t/char16_t/char32_t
这里是utf8不是utf16(wchar_t(windows)/char16_t)或utf32(char32_t) 编译器是g++
PS.哦对了文件IO流可以输出正确的字符串
展开
 我来答
危言危行
2018-09-22 · TA获得超过1153个赞
知道小有建树答主
回答量:404
采纳率:100%
帮助的人:197万
展开全部
主函数最前面加个system("chcp 65001");
c++的cout本身就不能输出utf8的中文;用printf就可以。
char a[]=u8"中文";
printf("%s",a);是可以的
追问
好吧 就以你这个为标准答案了
现在用的系统是ubuntu18.04 不存在这个问题了
且CPP应该有相关的库(也许标准库的locale和clocale就能做到)
哦对了std::cout实际上也是可以的
不一定非得用std::printf
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2017-06-05
展开全部
命令行也要使用UTF-8编码,才输出正常的
~
~
~
~
追问
呃 请问如何使控制台的编码改为utf8(最好给c++的办法)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式