c++中文乱码问题

挨踢直男 2020-09-03 08:54:00
通过libevent socket收到中文字符串(char数组),一个汉字被转换成了2个字符,cout打印出来是乱码,应该怎么样把字符数组还原成原本的字符串?
...全文
236 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
如果数组为纯中文,则输出2个字符即可。可参
棉猴 2020-09-04
  • 打赏
  • 举报
回复
转换成Unicode编码试试
smwhotjay 2020-09-04
  • 打赏
  • 举报
回复
把数据打印 0xFF 十六进制。对比下。如果是一致的。那就要看是否界面显示编码不一致
赵4老师 2020-09-04
  • 打赏
  • 举报
回复
对电脑而言没有乱码,只有二进制字节;对人脑才有乱码。啊 GBK:0xB0 0xA1,Unicode-16 LE:0x4A 0x55,Unicode-16 BE:0x55 0x4A,UTF-8:0xE5 0x95 0x8A
剑文文 2020-09-04
  • 打赏
  • 举报
回复
转成gbk试试,进行转码操作。看当前系统是什么编码。
lin5161678 2020-09-04
  • 打赏
  • 举报
回复
引用 3 楼 智者知已应修善业 的回复:
如果数组为纯中文,则输出2个字符即可。可参
不要把特例当真理 2个字节表示汉字 只是GBK BIG5 等编码的要求
qybao 2020-09-03
  • 打赏
  • 举报
回复
转换编码试试 可参考以下 https://bbs.csdn.net/topics/397563129

65,186

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧