2021年9月更新

最好的方法:

  • 使用wsl
  • 或者直接安装虚拟机,图形版本的,或者 ssh

下面介绍的几种方式其实都不是很好,各有缺陷。

以下的原内容:

首先,这篇文章是汇总了网上三种方法,并亲身测试的

测试环境
系统环境:window10 2004
clion 2020.3.1
编译器:mingw64

image.png
image.png

方法一——最愚蠢的方法

方法一是来自搜索引擎最多的解决办法,也是最差劲最没用最不推荐最应该被咒骂的方法
参考链接:用Clion运行C++代码时输出中文乱码解决方法
自己点进去看就好,没有述说意义

优点:可以解决中文乱码的问题
缺点:脱裤子放屁

方法二 —— 另辟蹊径

参考链接:解决Windows平台的Clion控制台乱码问题
大致意思就是说把mingw换成cygwin
优点:可以解决乱码问题(没有验证过)
缺点:由于cygwin在windows下体验并不好,还是改编码格式吧,只是稍微麻烦点。

方法三 —— 副作用极大,导致clion无法正常使用

参考链接:Clion 中 的乱码问题正确解决方案(来自官方技术支持)
大致意思就是说,按下Ctrl+Shift+Alt+/,取消默认选中的run.processes.with.pty

此方法为害人方法

优点:可以解决乱码问题
缺点:某些情况下程序直接卡死

方法四 —— 半完美的方法

参考链接:Windows下CLion中文乱码最有效的解决方式

最有效的方法:
c++ 在cmakelist.txt添加set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -fexec-charset=GBK")
c语言 在cmakelist.txt添加CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -fexec-charset=GBK"
但是该方法使得 relase 模式正常了,但是 debug 反而乱码了

方法五 —— 直接使用 debug 模式

debug 模式不乱码

方法六 —— 最完美的方案,使用 wsl 替换 gcc 移植版本

移植版本肯定会有各种问题,但是 wsl 下的 gcc 提供的是原生支持,不会有任何问题

image.png

结尾

如果大家有更好的方法的话,欢迎评论区留言


universe_king
3.4k 声望680 粉丝