如何解决Devc++运行窗口中文乱码
文章目录
- 如何解决Devc++运行窗口中文乱码
- 一、问题描述
- 二、问题的产生原因
- 三、解决问题的方法
- (一)使用旧版控制台
- (二)更改dev++的编码为ans
- (三)将运行窗口更改为utf-8
- 1、暂时更改编码
- 2、永久改变命令窗口的编码
- 3、直接改变devc++运行窗口的编码
一、问题描述
当你打开DevC++,编写好代码,编译…运行…发现执行结果中的中文,变成乱码。就像下图一样。
怎么办怎么办该怎么办呢?
憋慌!听我说
二、问题的产生原因
大家总能在各种地方,出现乱码的问题。其实就是由于编码的不同所导致的。
比如devc++的运行窗口中文乱码,其实是因为运行窗口的当前代码页编码为GBK,然而你的运行文件编码确实utf-8,这时由于二者编码不同的冲突,导致了运行窗口出现异常。
所以根据这些,找出解决乱码的方式。
三、解决问题的方法
首先我的devc++版本:
我经过查阅,试过很多种方式,然后才解决了。下面我就汇总一下这些方式,总有一种能够解决你的问题。
也可以点击直接跳转到——我最终的解决方案。
(一)使用旧版控制台
点击选择属性。选择使用旧版控制台,然后关闭重新运行
注:我的没有任何变化。
(二)更改dev++的编码为ans
1、首先,看看你运行窗口的编码是什么
点击选择属性。你就会看到当前代码页的编码,如下图。
2、然后根据你的需求,更改devc++的编码。
在devc++中,选择工具——编译器属性。(不同版本,可能位置有些不同,可以自己找一找),如下图。
注:我的devc++即使是设置了,也会提示:
然后!!就算是选择No还是Yes,都会自动将编码变成utf-8。(通过notepat++验证)
(三)将运行窗口更改为utf-8
俗话说的好,只要思想不滑坡,办法总比问题多。
既然devc++是utf-8,那我把运行窗口改成utf-8不就好了。
1、暂时更改编码
搜索cmd打开命令窗口
输入chcp 65001(65001是utf-8对应的十进制码值),出现:
这时候,当前页的编码就变成utf-8了。(但是也仅限是当前页,devc++的运行窗口还是没有变化)。
2、永久改变命令窗口的编码
首先win+r打开,输入regedit,打开注册表。
(这里还是要注意一下,注册表千万千万不要瞎删,删搞。万分谨慎。我就是有一次删了里面的某个东西,就去电脑店跑了好几次才好,哭~)
找到HKEY_CURRENT_USERConsole%SystemRoot%_system32_cmd.exe
找到CodePage ,双击打开。
切换到十进制,将数值数据修改为65001,确定。
(对于没有 CodePage 的,可以鼠标右键-> 新建 -> DWORD(32位)值,创建即可。)
注:这里不要选择64的,我试了64的,但是没有用就试了下一种方式。参考网上评论,上述方式也是有用的。
3、直接改变devc++运行窗口的编码
这个是我自己摸索发现的方法
和方法2步骤一样,首先打开注册表
找到HKEY_CURRENT_USERConsole
这里我发现了devc++的。
找到CodePage,双击打开
切换到十进制,将数值数据修改为65001,确定。
这时候就会发现,你的devc++运行窗口,中文正常了!!
最后送给大家一句话: