1. https://coding.imooc.com/learn/questiondetail/226012.html
在上周提问的问题个人感觉问题描述应该比较清晰,使用代码就是跟着老师的笔记一起敲的,如下:
wchar_t zhong = L'中';
wchar_t zhong_hex = L'\u4E2D';
printf("中:%d\n", zhong);
printf("中:%d\n", zhong_hex);在自行百度解决方法之后,在看得懂的技术帖里找到了如下方法:
“CLion中按住Ctrl+Shift+Alt+/选中Registry...,然后取消掉 run.processes.with.pty 后面的√。”
照做后解决了“文件编码为UTF-8,使用Debug-MinGW编译后输出宽字符'中'为乱码”的问题,输出如下:

不过又出现了新的问题。。。
2. 在自己对C语言参考书中代码做练习后发现取消掉 run.processes.with.pty后(备注:取消后须用UTF-8编码,使用GKB会乱码),使用scanf读入数据前无法用printf给提示信息,使用代码如下:
#include <stdio.h>
int main() {
const int PASS = 60;
int score;
printf("请输入成绩:");
scanf("%d", &score);
printf("你输入的成绩是%d。\n", score);
if (score < PASS) {
printf("很遗憾,这个成绩没有及格。");
} else {
printf("祝贺你,这个成绩及格了。");
}
printf("再见\n");
return 0;
}运行后截图:

所以迫于无奈我又把run.processes.with.pty打勾了(我也尝试去百度原因,但是发现这类技术贴已经超出我目前的理解范围了,看不懂。。。),此时正常运行(备注:打勾后需要更改编码为GKB),如下:

3. Debug模式也很离谱
第一是在scanf之前不管对于中文字符串还是英文字符串的printf提示信息都不显示
第二是和控制台相反,GBK编码是乱码,UTF-8正常输出


所以对于不同情况需要来回切换编码,对于字符还需要对设置选择打不打勾。。。
目前学习中对于CLion的问题就发现这么多,我最近才使用windows系统的电脑,还不是很了解,以前一直在用mac系统,在Xcode中运行过C的代码,运行和debug没有出现过类似的乱码和不给提示信息的问题。。。不过我那个MacBook air硬盘和内存都不太够用了,所以现在就上学记笔记看看视频用,暂时也没打算在mac上写代码。。。