VsCode搭建C語言運行環境以及終端亂碼問題解決

来源:https://www.cnblogs.com/wren/archive/2022/12/24/17002797.html
-Advertisement-
Play Games

在VsCode中搭建C/C++運行環境需要先安裝以下插件 1、安裝c/c++插件 2、安裝code runner插件 當然也可以安裝一些其他的美化插件根據個人習慣,但是以上這兩個是必裝的。 安裝好插件後來到插件主頁點擊卸載旁邊的小齒輪選擇擴展設置 找到擴展設置中的下圖選項並打上勾即可,設置完後重啟V ...




在VsCode中搭建C/C++運行環境需要先安裝以下插件


1、安裝c/c++插件

在這裡插入圖片描述


2、安裝code runner插件

在這裡插入圖片描述


當然也可以安裝一些其他的美化插件根據個人習慣,但是以上這兩個是必裝的。

安裝好插件後來到插件主頁點擊卸載旁邊的小齒輪選擇擴展設置


在這裡插入圖片描述


找到擴展設置中的下圖選項並打上勾即可,設置完後重啟VsCode


在這裡插入圖片描述



以上算是第一大步,接下來進行第二大步,安裝Mingw

附上下載地址 https://nuwen.net/mingw.html ,下載下圖所示的版本,建議安裝在C盤目錄下。


在這裡插入圖片描述


配置環境變數,在C盤找到mingw的目錄


在這裡插入圖片描述


打開並找到bin文件


在這裡插入圖片描述


複製bin文件的路徑(註意是bin文件的路徑)


在這裡插入圖片描述


然後找到電腦中的的高級系統設置


在這裡插入圖片描述


找到環境變數

選中用戶變數中的path,選擇編輯


在這裡插入圖片描述


點擊新建,將剛剛複製的bin文件錄製粘貼進去,然後全點確定關閉所有視窗。


在這裡插入圖片描述


win + R輸入cmd,cmd中輸入 gcc -v -E -x c++ - 出現這些就表明成功了


在這裡插入圖片描述



然後來到代碼界面右鍵點擊Run Code即可運行了,但是可能會出現終端顯示中文亂碼,這是因為vscode編輯器本身預設是使用的utf-8編碼,而終端使用的編碼格式為gbk,這兩個編碼格式在對於中文的處理上有些字元上的差異,所以在輸出時自然就是會出現中文亂碼的問題了。這是因為運行程式時是將文本內容以utf-8來保存的,但是終端輸出就是用另外一個編碼gbk來顯示了,沒有經過編解碼轉換就是會出現亂碼問題。

能夠解決vscode編輯器終端輸出中文亂碼的方法有很多種,基本上都是去修改編碼格式使得編輯器和終端的編碼統一。但是在考慮到不影響到電腦上其他程式和文本編碼格式的前提下,就只能夠去通過修改配置文件來改變vscode終端編碼格式了。

找到首選項進入設置,可以看到右上角有個文件的圖標點擊進去。


在這裡插入圖片描述


將以下的代碼追加到大括弧中就可以了,


"terminal.integrated.profiles.windows": {
        "PowerShell": {
          "source": "PowerShell",
          "overrideName": true,
          "args": ["-NoExit", "/c", "chcp 65001"],
          "icon": "terminal-powershell",
          "env": {
            "TEST_VAR": "value"
          }
        }
      },
"terminal.integrated.defaultProfile.windows": "PowerShell",

追加的時候記得在上一段代碼最後加上一個逗號,如圖:


在這裡插入圖片描述


記得保存,然後重新運行代碼就不會出現亂碼了。




您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 在JS中,類是後來才出的概念,早期創造對象的方式是new Function()調用構造函數創建函數對象; 而現在,可以使用new className()構造方法來創建類對象了; 所以在很多方面,類的使用方式,很像函數的使用方式: 但是類跟函數,還是有本質區別的,這在原型那裡已經說過,不再贅述; 如何 ...
  • 好家伙,本篇為《JS高級程式設計》第八章“對象、類與面向對象編程”學習筆記 1.工廠模式 工廠模式是另外一種關註對象創建概念的創建模式。 它的領域中同其它模式的不同之處在於它並沒有明確要求我們使用一個構造器。 取而代之,一個工廠能提供一個創建對象的公共介面,我們可以在其中指定我們希望被創建的工廠對象 ...
  • ​ 目錄 1.前言 2.目標與效果展示 3.下載OpenCV圖形識別庫 4.下載python支持的v2模塊 5.圖片素材 6.代碼 1.前言 ​ 編輯 Merry Christmas!今天是2022年12月24日,今晚是平安夜在這裡提前祝大家聖誕節快樂! 大家可能對@官方微信給自己的頭像加上一頂聖誕 ...
  • 摘要:教你如何用java實現每日給女友微信發送早安等微信信息。 本文分享自華為雲社區《java實現每日給女友微信發送早安等微信信息》,作者:穆雄雄 。 前言 據說這個功能最近在抖音上很火,我沒有抖音,沒有看到。 但是我在網上看了,相關案例確實很多,但是大家都是藉助於了微信服務號,在我看來,效果很不佳 ...
  • 一、選題的背景 (1)為什麼要選擇此選題? 樂高是一個很受歡迎的玩具積木品牌,它們通常是成套出售的,用來製作特定的物品,每一套都包含許多不同形狀、大小和顏色的零件。它是一個有趣的數據集合,它包含了多年來集合的綜合列表,以及每個集合包含的部分數。提供了許多可供探索的空間,特別是因為“集合”文件包含了集 ...
  • C++ 基礎3 typedef 為現有類型創建一個新名字 主要有以下幾種形式: 為基本數據類型定義別名 為指針定義別名 為自定義數據類型定義別名 為數組定義別名 聲明函數 定義新名稱為了簡化一些複雜的數據類型,以方便使用 為基本數據類型定義名稱 語法typedef 舊類型 新名字 例如: typed ...
  • Ruby是強類型動態語言,即Ruby中一旦某一個對象被定義類型,如果不通過強制轉換操作,那麼它永遠就是該數據類型,並且只有在Ruby解釋器運行時才會檢測對象數據類型,它的一切皆為對象(包括 nil 值對象),可以通過調用內置class屬性來獲取該對象的具體數據類型。對於 Ruby 而言,所有類型都繼 ...
  • JZ56 數組中只出現一次的兩個數字 題目 一個整型數組裡除了兩個數字只出現一次,其他的數字都出現了兩次。請寫程式找出這兩個只出現一次的數字 思路 演算法實現 既然有兩個數字只出現了一次,我們就統計每個數字的出現次數,利用哈希表的快速根據key值訪問其頻率值。 具體做法: step 1:遍曆數組,用哈 ...
一周排行
    -Advertisement-
    Play Games
  • 前言:有時候遠程伺服器的進程你想偷偷去圍觀一下有哪些,或者對一些比較調皮的進程進行封殺,或者對一些自己研發的服務進行遠程手動啟動或者重啟等,又不想打開遠程桌面,只想悄咪咪地執行,那也許下麵的文章會對你有啟發。 前提條件 確保遠程伺服器(服務端)已啟用WinRM。在遠程伺服器上運行以下命令可以啟用和配 ...
  • 爆了,爆了,DeveloperSharp系列近期又被製造業ERP、民航飛行App、建築BIM、電力掌上營業廳、等多家大型採用,站在巨人的肩膀上你能走的更遠。 支持.Net Core2.0及以上,支持.Net Framework4.0及以上 http請求調用是開發中經常會用到的功能。在內,調用自有項目 ...
  • StackExchange.Redis 是一個高性能的 Redis 客戶端庫,主要用於 .NET 環境下與 Redis 伺服器進行通信,大名鼎鼎的stackoverflow 網站就使用它。它使用非同步編程模型,能夠高效處理大量請求。支持 Redis 的絕大部分功能,包括發佈/訂閱、事務、Lua 腳本等... ...
  • 一:背景 1. 講故事 前些天群里有一個朋友說他們軟體會偶發崩潰,想分析看看是怎麼回事,所幸的是自己會抓dump文件,有了dump就比較好分析了,接下來我們開始吧。 二:WinDbg 分析 1. 程式為什麼會崩潰 windbg 還是非常強大的,當你雙擊打開的時候會自動幫你定位過去展示崩潰時刻的寄存器 ...
  • 工廠模式(Factory Pattern)是一種創建型設計模式,它提供了一種創建對象的介面,而不是通過具體類來實例化對象。工廠模式可以將對象的創建過程封裝起來,使代碼更具有靈活性和可擴展性。 工廠模式有幾種常見的實現方式: 簡單工廠模式(Simple Factory Pattern): 簡單工廠模式 ...
  • Web Service 理解:Web Service 是一種基於網路的服務,它使用標準化的消息傳遞協議,最典型的是基於 SOAP(Simple Object Access Protocol)協議。SOAP 使用 XML 格式封裝數據,定義了消息的結構和傳輸方式,因此它是一個重量級的解決方案。Web ...
  • 可以使用XmlSerializer直接序列化和反序列化xml 反序列化如以下代碼 private T? XmlDeseriallize<T>(string filePath) { XmlSerializer serializer = new XmlSerializer(typeof(T)); usi ...
  • 不管是在控制台程式還是asp.net core程式中,我們經常會有用到一個需要長時間運行的後臺任務的需求。通常最直覺的方式是使用Thread實例來新建一個線程,但是這樣需要自行管理線程的啟動和停止。 在.net core中提供了一個繼承自IHostedService的基類BackgroudServi ...
  • 最近YOLO家族又添新成員:YOLOv10,YOLOv10 提出了一種一致的雙任務方法,用於無nms訓練的YOLOs,它同時帶來了具有競爭力的性能和較低的推理延遲。此外,還介紹了整體效率-精度驅動的模型設計策略,從效率和精度兩個角度對YOLOs的各個組成部分進行了全面優化,大大降低了計算開銷,增強了... ...
  • 自動篩選器是 Excel 中的一個基本但極其有用的功能,它可以讓你根據特定的條件來自動隱藏和顯示你的數據。當有大量的數據需要處理時,這個功能可以幫你快速找到你需要的信息,從未更加有效地分析和處理相關數據。 下麵將介紹如何使用免費.NET Excel庫在Excel中添加、應用和刪除自動篩選器。包含以下 ...