解決Devc++運(yùn)行窗口中文亂碼的實(shí)現(xiàn)步驟
一、問(wèn)題描述
當(dāng)你打開(kāi)DevC++,編寫(xiě)好代碼,編譯…運(yùn)行…發(fā)現(xiàn)執(zhí)行結(jié)果中的中文,變成亂碼。就像下圖一樣。

怎么辦怎么辦該怎么辦呢?

憋慌!聽(tīng)我說(shuō)
二、問(wèn)題的產(chǎn)生原因
大家總能在各種地方,出現(xiàn)亂碼的問(wèn)題。其實(shí)就是由于編碼的不同所導(dǎo)致的。
比如devc++的運(yùn)行窗口中文亂碼,其實(shí)是因?yàn)檫\(yùn)行窗口的當(dāng)前代碼頁(yè)編碼為GBK,然而你的運(yùn)行文件編碼確實(shí)utf-8,這時(shí)由于二者編碼不同的沖突,導(dǎo)致了運(yùn)行窗口出現(xiàn)異常。
所以根據(jù)這些,找出解決亂碼的方式。
三、解決問(wèn)題的方法
首先我的devc++版本:
我經(jīng)過(guò)查閱,試過(guò)很多種方式,然后才解決了。下面我就匯總一下這些方式,總有一種能夠解決你的問(wèn)題。
也可以點(diǎn)擊直接跳轉(zhuǎn)到——我最終的解決方案。

(一)使用舊版控制臺(tái)
點(diǎn)擊
選擇屬性。選擇使用舊版控制臺(tái),然后關(guān)閉重新運(yùn)行

注:我的沒(méi)有任何變化。
(二)更改dev++的編碼為ans
1、首先,看看你運(yùn)行窗口的編碼是什么
點(diǎn)擊
選擇屬性。你就會(huì)看到當(dāng)前代碼頁(yè)的編碼,如下圖。

2、然后根據(jù)你的需求,更改devc++的編碼。
在devc++中,選擇工具——編譯器屬性。(不同版本,可能位置有些不同,可以自己找一找),如下圖。

注:我的devc++即使是設(shè)置了,也會(huì)提示:

然后??!就算是選擇No還是Yes,都會(huì)自動(dòng)將編碼變成utf-8。(通過(guò)notepat++驗(yàn)證)
(三)將運(yùn)行窗口更改為utf-8
俗話說(shuō)的好,只要思想不滑坡,辦法總比問(wèn)題多。
既然devc++是utf-8,那我把運(yùn)行窗口改成utf-8不就好了。
1、暫時(shí)更改編碼
搜索cmd打開(kāi)命令窗口
輸入chcp 65001(65001是utf-8對(duì)應(yīng)的十進(jìn)制碼值),出現(xiàn):

這時(shí)候,當(dāng)前頁(yè)的編碼就變成utf-8了。(但是也僅限是當(dāng)前頁(yè),devc++的運(yùn)行窗口還是沒(méi)有變化)。
2、永久改變命令窗口的編碼
首先win+r打開(kāi),輸入regedit,打開(kāi)注冊(cè)表。
(這里還是要注意一下,注冊(cè)表千萬(wàn)千萬(wàn)不要瞎刪,刪搞。萬(wàn)分謹(jǐn)慎。我就是有一次刪了里面的某個(gè)東西,就去電腦店跑了好幾次才好,哭~)

找到HKEY_CURRENT_USER\Console%SystemRoot%_system32_cmd.exe
找到CodePage ,雙擊打開(kāi)。

切換到十進(jìn)制,將數(shù)值數(shù)據(jù)修改為65001,確定。
(對(duì)于沒(méi)有 CodePage 的,可以鼠標(biāo)右鍵-> 新建 -> DWORD(32位)值,創(chuàng)建即可。)
注:這里不要選擇64的,我試了64的,但是沒(méi)有用就試了下一種方式。參考網(wǎng)上評(píng)論,上述方式也是有用的。
3、直接改變devc++運(yùn)行窗口的編碼
這個(gè)是我自己摸索發(fā)現(xiàn)的方法
和方法2步驟一樣,首先打開(kāi)注冊(cè)表
找到HKEY_CURRENT_USER\Console
這里我發(fā)現(xiàn)了devc++的。

找到CodePage,雙擊打開(kāi)

切換到十進(jìn)制,將數(shù)值數(shù)據(jù)修改為65001,確定。
這時(shí)候就會(huì)發(fā)現(xiàn),你的devc++運(yùn)行窗口,中文正常了?。?/p>
到此這篇關(guān)于解決Devc++運(yùn)行窗口中文亂碼的實(shí)現(xiàn)步驟的文章就介紹到這了,更多相關(guān)Devc++運(yùn)行窗口中文亂碼內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C++實(shí)現(xiàn)LeetCode(19.移除鏈表倒數(shù)第N個(gè)節(jié)點(diǎn))
這篇文章主要介紹了C++實(shí)現(xiàn)LeetCode(19.移除鏈表倒數(shù)第N個(gè)節(jié)點(diǎn)),本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07
C++靜態(tài)變量,常量的存儲(chǔ)位置你真的了解嗎
這篇文章主要介紹了C++中靜態(tài)變量與常量的存儲(chǔ)位置的相關(guān)資料,需要的朋友可以參考下,希望能夠給你帶來(lái)幫助2021-08-08
隊(duì)列的動(dòng)態(tài)鏈?zhǔn)酱鎯?chǔ)實(shí)現(xiàn)代碼分享
DynaLnkQueue.cpp - 動(dòng)態(tài)鏈?zhǔn)疥?duì)列,即隊(duì)列的動(dòng)態(tài)鏈?zhǔn)酱鎯?chǔ)實(shí)現(xiàn)2014-02-02
C語(yǔ)言學(xué)生成績(jī)管理系統(tǒng)設(shè)計(jì)
這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言學(xué)生成績(jī)管理系統(tǒng)設(shè)計(jì),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-01-01

