win10更新1809版本后運行Dev-cpp, dos控制台字符亂碼解決方法


 

微軟:請勿安裝windows10 1809版本,有bug會刪除個人文件

雖然微軟非常利索的在發布會后及時推送了新的windows10新版本,但自從推送后,諸多問題層出不窮。之前用戶曾表示1809版本windows 10的任務管理器存在CPU使用率錯誤顯示的問題。

不過,可能是微軟發布的太過於匆忙,1809版本已被發現非常嚴重的bug。有用戶反饋稱由於1809的推送,自己電腦的user個人文件夾丟失了近十年積攢下的文件,這個問題也不是孤例,已經不止一個用戶反饋了這一嚴重的bug。

微軟已在此前暫停並撤去了1809的推送和更新,並已撤下官網的新版宣傳頁面,並在顯著位置對此事做了說明。說明中敘述了該問題,並表示,如果用戶確定在更新系統后丟失了個人文件,請盡量減少使用受到影響的設備,並於當地的微軟服務中心取得聯系。

微軟還表示,會為用戶提供專門的修復工具,並不建議用戶使用其他的第三方工具恢復,以免對原硬盤的結構造成破壞。

正如眾多網友表示,1809可以說是bug最多的版本了,這背后也是微軟業務中心的表現。

18年4月,微軟進行了納德拉上任CEO以來最大的一次業務重組,這次重組解散了原來的Windows和硬件設備部門(WDG),並成立了兩個新的部門——“體驗和設備部門”和“雲計算和人工智能平台部門”。微軟業務重心變為“雲計算”和“人工智能”。

不過上面 並不是我今天要講的

 

今天講Dos控制台亂碼解決方法。

(一)Dos命令窗口亂碼問題

測試工具:

Dev-cpp 5.11

TDM - GCC  4.9.2  64-bit

             

測試代碼如下(一): 

 1 #include<iostream>
 2 using namespace std;
 3 #include<stdio.h>
 4 //#pragma execution_character_set("GBK") 
 5 int main(){
 6     fprintf(stdout, "This is a test.\n");  //顯示正常 
 7     fprintf(stdout, "你好!123abc\n"); //顯示 [??????123abc] 對后面的字符輸出沒有影響 
 8 
 9     printf("你好!123abc\n"); //顯示 [??????123abc] 
10     printf(" 你好!123abc\n"); //顯示   [ ??????123abc]
11 /*    cout<<"你好!123abc"<<endl; /*     顯示  [?愫茫?23abc]  
12         注:會使后面的cout語句無效 cout1,cout2,cout3。對system("type 文件路徑")和打開txt里的內容無影響 */ 
13     cout<<"n你好!123abc"<<endl;// cout1     cout的內容,英文字母開頭加中文,顯示正常 
14     cout<<" 你好!123abc"<<endl;// cout2    cout的內容,空格開頭加中文,顯示正常
15     cout<<endl;// cout3
16     system("type C:\\Users\\Bingooo\\Desktop\\你好12345.txt");
17     return 0; 
18 } 

 

 測試結果(二):

                    

分析:

     1、cout后跟的內容,如果直接以中文開頭,會亂碼,如果用“字符+文字” ,顯示正常,字符可以是空格。

     (比較敷衍地解決辦法之一,並不能達到目的!)

     2、首先找問題原因:

             在visual studio測試相同代碼,全部顯示正常。

             在虛擬機里新安裝的一個win10 1809的系統,測試結果,同上。亂碼!

             在虛擬機里的win 10, 1803版本,正常!!!!找到問題了! !!win10 1809的 BUG !

     3、找到了問題不行啊,還要找到解決辦法啊!

     4、網上嘗試很多解決辦法,都沒有解決。

(二)下面附上兩個比較有效的辦法:

    方法一:重裝系統!1803的最新官方正版,不做敖述。簡單粗暴,十分有效!推薦在1809穩定之后,再升級系統。

               如果有文件想保留,並且打開C盤能看到Windows.old文件夾,可以直接回退。

               但是話說回來,遇到問題就重裝系統,豈不感覺水平太low!

    方法二:更改控制台屬性。如下圖:

在窗口欄上右鍵 - 屬性 - 勾選 使用舊版控制台 - 重啟。解決!

(不過舊版控制台是丑了點,沒辦法~)

        雖然Windows 10四月更新版發布后已經出現嚴重問題,但相比剛剛發布的新版本那四月更新版算是小兒科。因為微軟在新版本里直接跳過發布預覽通道,該通道原本是被設計用於測試生產環境的構建提高版本穩定性。如果你關注Windows 10資訊會發現這次微軟沒有推送發布預覽版,從慢速通道測試完畢后直接發布正式版。或許說測試完畢都不算是准確的,因為慢速通道的Build 17763.1 還存在已知問題但依然被作為RTM正式版。和四月更新版那樣只要用戶點擊檢查更新那就會自動下載新版本,即便還存在問題的情況下都會下載和升級。

所以不論什么更新,請謹慎!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM