VSCode配置C++開發(fā)環(huán)境(MinGW-w64)-創(chuàng)新互聯

最近在學習C++的相關知識,這就需要配置相關的開發(fā)環(huán)境,雖然Visual Studio可以近乎“傻瓜式”安裝相應的開發(fā)環(huán)境,但是其占用量也非常大,VSCode相對輕量化,也方便后面學習其他語言的開發(fā)。

創(chuàng)新互聯主營通化縣網站建設的網絡公司,主營網站建設方案,成都app軟件開發(fā)公司,通化縣h5成都小程序開發(fā)搭建,通化縣網站營銷推廣歡迎通化縣等地區(qū)企業(yè)咨詢

在VSCode配置C++開發(fā)環(huán)境的過程中,我也踩了許多的坑,記錄一下,也為有需要的同學提供參考。

1、VSCode下載安裝

VSCode下載安裝其實很簡單,但是大家需要注意“VSCode收費”的情況。VSCode本身是免費的,所以下載的時候要從官方網站下載,這邊貼一下官方網站:https://code.visualstudio.com/

下載好安裝包只需要雙擊安裝即可,如果有需要的話,可以調整安裝位置,個人建議別占用C盤空間。

2、MinGW-w64下載、安裝與配置 (1)下載安裝

MinGW-w64的下載依舊建議從官網下載:https://sourceforge.net/projects/mingw-w64/files/
安裝過程中,一定要記住自己的安裝路徑,因為后面配置系統(tǒng)環(huán)境變量的時候需要用到!

需要注意的是,MinGW-w64有兩種安裝方式:

  • 一種是安裝器的形式,即從官網下載一個exe文件,然后雙擊運行,接著通過這個安裝器選擇想要的版本等信息,最后安裝器根據我們的選擇從官網下載安裝對應的版本。這種方式雖然簡單,但是很大概率會因為網絡原因安裝失敗,所以非常不推薦?。。?/li>
  • 另一種是從官網下載我們需要的版本的壓縮包,然后本地解壓即可。其實這種方式也不復雜,不過需要我們對其中的幾個參數有一定的了解。這邊附一張官網的圖,方便大家了解這兩種方式的區(qū)別,也避免下載錯誤。

01.png

x86_64是指64位的操作系統(tǒng),i686是指32位的操作系統(tǒng);

win32是開發(fā)windows系統(tǒng)程序的協(xié)議,posix是其他系統(tǒng)的協(xié)議(例如Linux、Unix、Mac OS);

異常處理模型 seh(新的,僅支持64位系統(tǒng)),sjlj (穩(wěn)定的,64位和32位都支持), dwarf (優(yōu)于sjlj的,僅支持32位系統(tǒng))。

本人使用的系統(tǒng)是64位Win10系統(tǒng),使用版本為x86_64-win32-seh。 據說x86_64-win32-sjlj的版本也可以,但是我在實際使用過程中,使用string類型的時候,沒法正常使用,一旦定義一個string類型變量,編譯運行之后終端就會“閃一下退出”如果直接使用終端命令編譯運行是可以的;我的解決方式就是更改版本為x86_64-win32-seh,問題解決。

(2)環(huán)境變量配置

鼠標放置在“此電腦”上,右擊選擇“屬性”,一直滑到最下面,選擇“高級系統(tǒng)設置”,然后選擇“環(huán)境變量”

02.png

然后在“系統(tǒng)變量”中選擇“新建”

03.png

然后輸入“變量名”和“變量值”,建議變量名和我的一模一樣,變量值設置為自己的安裝路徑。(該路徑應該是bin目錄的上一級)

04.png

然后在“系統(tǒng)變量”中找到“Path”,雙擊或者點擊“編輯”

05.png

進入編輯頁之后,點擊“新建”,然后在最后添加一行和我一樣的路徑即可。千萬記得點擊“確認” 進行保存!??!

06.png

(3)驗證

鍵盤按Win+R鍵,然后輸入cmd,按“確定”或者“回車”

07.png

在終端中輸入gcc -v,然后回車,如果可以輸出一堆東西,并且最后有一個gcc的版本信息,那就說明安裝配置成功了。

08.png3、VSCode配置C++開發(fā)環(huán)境 (1)插件安裝

打開安裝好的VSCode,選擇左側的“拓展”,選擇安裝“C/C++”,這個是必須要安裝的。如果你和我一樣,英文非常菜,你也可以安裝簡體中文的拓展,這樣VSCode就會編程中文的,這就非常的友好。建議安裝完拓展之后重啟一下VSCode。

09.png(2)配置文件

接下來是非常非常重要的部分,也是非常容易出錯的部分,有的同學可能會遇到一些莫名其妙的問題,我嘗試了好長時間,看了很多前輩的帖子,目前我的這個配置沒有問題,但是確實沒法保證針對其他開發(fā)環(huán)境也百分百有用,如果有問題,可以交流!

首先創(chuàng)建一個工作區(qū)(新建一個文件夾用于后面存放代碼等文件),我這兒名稱叫“CPLUSPLUS”,然后在這個工作區(qū)里面新建一個“.vscode”的文件夾,注意不是“vscode”,不要漏掉那個點,接著在這個文件夾里面新建三個配置文件“c_cpp_properties.json”、“l(fā)aunch.json”、“tasks.json”。

10.png

c_cpp_properties.json文件

{"configurations": [
        {"name": "Win32",
            "includePath": [
                "${workspaceRoot}",
                "D:/mingw64/include/**",
                "D:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++",
                "D:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32",
                "D:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward",
                "D:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include",
                "D:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed",
                "D:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/include"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "__GNUC__=6",
                "__cdecl=__attribute__((__cdecl__))"
            ],
            "compilerPath": "D:/mingw64/bin/g++.exe",
            "intelliSenseMode": "windows-gcc-x64",
            "browse": {"limitSymbolsToIncludedHeaders": true,
                "databaseFilename": "",
                "path": [
                    "${workspaceRoot}",
                     "D:/mingw64/include/**",
                     "D:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++",
                     "D:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32",
                     "D:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward",
                     "D:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include",
                     "D:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed",
                     "D:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/include"
                ]
            }
        }
    ],
    "version": 4
}

關于c_cpp_properties.json,需要修改的是“includePath”和“path”。至于這里面六個路徑分別是什么,大家可以使用命令行去查詢自己的對應路徑。依然是Win+R,然后輸入cmd,接著回車,然后在終端輸入下面的命令,接著回車即可。

gcc -v -E -x c++ -
11.png

launch.json文件

{"version": "0.2.0",  
    "configurations": [  
        {"name": "(gdb) Launch", // 配置名稱,將會在啟動配置的下拉菜單中顯示  
            "type": "cppdbg",       // 配置類型,這里只能為cppdbg  
            "request": "launch",    // 請求配置類型,可以為launch(啟動)或attach(附加)  
            "program": "${workspaceFolder}/exe/${fileBasenameNoExtension}.exe",// 將要進行調試的程序的路徑  
            "args": [],             // 程序調試時傳遞給程序的命令行參數,一般設為空即可  
            "stopAtEntry": false,   // 設為true時程序將暫停在程序入口處,一般設置為false  
            "cwd": "${workspaceFolder}", // 調試程序時的工作目錄,一般為${workspaceFolder}即代碼所在目錄  
            "environment": [],  
            "externalConsole": true, // 調試時是否顯示控制臺窗口,一般設置為true顯示控制臺  
            "MIMode": "gdb",  
 
 
            // 這里的路徑需要修改。改成自己的路徑
            "miDebuggerPath": "D:/mingw64/bin/gdb.exe",
 
            "preLaunchTask": "C/C++: g++.exe 生成活動文件", // 調試會話開始前執(zhí)行的任務,一般為編譯程序,c++為g++, c為gcc  
            "setupCommands": [  
                {"description": "Enable pretty-printing for gdb",  
                    "text": "-enable-pretty-printing",  
                    "ignoreFailures": true  
                }  
            ]  
        }  
    ]  
}

需要注意的是參數“program”中我讓編譯生成的“exe文件”單獨放在一個文件夾里面了,這樣代碼文件和編譯生成的“exe文件”可以區(qū)分開,更加的有條理。參數“miDebuggerPath”修改為自己的路徑即可。參數“preLaunchTask”需要注意一下,這個參數需要和后面的task.json文件中的一個參數對應(兩者一模一樣)。

task.json文件

{"version": "2.0.0",
    "tasks": [
        {"type": "shell",
            "label": "C/C++: g++.exe 生成活動文件",//任務的名字,就是剛才在命令面板中選擇的時候所看到的,可以自己設置
            "command": "D:/mingw64/bin/x86_64-w64-mingw32-g++.exe",
            "args": [//編譯時候的參數
                "-g",//添加gdb調試選項
                "${file}",
                "-o",//指定生成可執(zhí)行文件的名稱
                "${workspaceFolder}/exe/${fileBasenameNoExtension}.exe"
            ],
            "options": {"cwd": "D:/mingw64/bin"
            },
            "problemMatcher": {"owner": "cpp",
                "fileLocation": [
                    "relative",
                    "\"
                ],
                "pattern": {"regexp": "^(.*):(\d+):(\d+):\s+(warning|error):\s+(.*)$",
                    "file": 1,
                    "line": 2,
                    "column": 3,
                    "severity": 4,
                    "message": 5
                }
            },
            "group": {"kind": "build",
                "isDefault": true//表示快捷鍵Ctrl+Shift+B可以運行該任務
            }
        }
    ]
}

前文說到的launch.json文件中的“preLaunchTask”參數要和task.json文件中的“l(fā)abel”參數保持一致。“command”參數和“cwd”參數修改為自己對應的路徑即可。

(3)測試

新建一個專門存放代碼文件的文件夾(自定義名稱),然后新建一個名為exe的文件夾用于存放編譯產生的exe文件,接著在新建的存在代碼的文件夾中新建一個后綴為cpp文件,并輸入測試代碼

12.png

按“F5”鍵編譯運行,會發(fā)現終端自動跳出,并顯示內容,同時exe文件夾中有一個新生成的文件,這就是編譯后的exe文件。

(4)中文亂碼問題解決

上述測試過程中,我們會發(fā)現終端的輸出內容看不懂,是一串亂碼

13.png

這是因為VSCode使用的是“UTF-8”編碼,而Win10終端默認的是使用gbk編碼,我們當然可以修改終端的默認編碼格式來解決中文亂碼問題,但是后面其他的工作場景可能會帶來一些意想不到的問題,因此我們采用的是“將VSCode的編碼修改為gbk”

點擊左下角“齒輪”形狀的“設置”,選擇“設置”,進入設置頁之后,輸入并搜索“編碼”,然后將“UTF-8”編碼修改為“Simplified Chinese (GB 2312)”,然后重新F5運行即可。

14.png

綜上就完成了VSCode配置C++開發(fā)環(huán)境的過程了。

你是否還在尋找穩(wěn)定的海外服務器提供商?創(chuàng)新互聯www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調度確保服務器高可用性,企業(yè)級服務器適合批量采購,新人活動首月15元起,快前往官網查看詳情吧

本文標題:VSCode配置C++開發(fā)環(huán)境(MinGW-w64)-創(chuàng)新互聯
新聞來源:http://muchs.cn/article36/cdogpg.html

成都網站建設公司_創(chuàng)新互聯,為您提供網站策劃、小程序開發(fā)、網站內鏈、企業(yè)網站制作動態(tài)網站、企業(yè)建站

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯

搜索引擎優(yōu)化