0 引言
簡要介紹VS Code配置C++開發環境(windows 開發環境)的全過程,幫助大家少走些彎路,希望對大家有所幫助。
1 下載安裝VS Code
下載地址爲:https://code.visualstudio.com/
2 配置中文環境
我下載的是VSCodeUserSetup-x64-1.38.1這個版本已經能直接安裝中文環境插件,可直接下載插件:Chinese (Simplified) Language Pack for Visual Studio Code,重新開啓即可。
3 安裝C++插件
1)C/C++
2)C++ Intellisense
4 安裝C++編譯器
MinGW的下載地址爲:https://sourceforge.net/projects/minGW/files/latest/download?source=files
點擊下載好的安裝包,並安裝,結束後Continue按鈕恢復爲可用狀態,點擊完成安裝。
打開MinGW安裝界面,勾選一下幾個選項:
- minGW32-gcc(bin)
- minGW32-gcc-g++(bin)
- minGW32-gdb(bin)
點擊左上角的Installation菜單下的Apply Changes以應用修改,過程需要聯網,請耐心等待安裝完成。
5 配置編譯環境
接下來進行編譯環境配置:
1)打開控制面板的“高級系統設置”,點擊左側搜索結果中的“查看高級系統設置”
2)點擊環境變量,找到系統變量的Path變量,點擊編輯,新建變量,變量爲MinGW的安裝目錄。一般爲“C:\MinGW\bin”
3)重新啓動VSCode,編譯完代碼後按快捷鍵F5或者在菜單欄中找到調試按鈕以進行調試操作。這時工作目錄下生成一個launch.json的啓動配置文件,使用下面代碼替換該文件。
{
"version": "0.2.0",
"configurations": [
{
"name": "C++ Launch (GDB)", // 配置名稱,將會在啓動配置的下拉菜單中顯示
"type": "cppdbg", // 配置類型,這裏只能爲cppdbg
"request": "launch", // 請求配置類型,可以爲launch(啓動)或attach(附加)
"launchOptionType": "Local", // 調試器啓動類型,這裏只能爲Local
"targetArchitecture": "x86", // 生成目標架構,一般爲x86或x64,可以爲x86, arm, arm64, mips, x64, amd64, x86_64
"program": "${file}.exe", // 將要進行調試的程序的路徑
"miDebuggerPath":"c:\\MinGW\\bin\\gdb.exe", // miDebugger的路徑,注意這裏要與MinGw的路徑對應
"args": ["blackkitty", "1221", "# #"], // 程序調試時傳遞給程序的命令行參數,一般設爲空即可
"stopAtEntry": false, // 設爲true時程序將暫停在程序入口處,一般設置爲false
"cwd": "${workspaceRoot}", // 調試程序時的工作目錄,一般爲${workspaceRoot}即代碼所在目錄
"externalConsole": true, // 調試時是否顯示控制檯窗口,一般設置爲true顯示控制檯
"preLaunchTask": "g++" // 調試會話開始前執行的任務,一般爲編譯程序,c++爲g++, c爲gcc
}
]
}
4)成功替換後,切換至cpp文件,按F5進行調試,此時會報錯,點擊配置任務。任意選擇搜索框下的項目,彈出task.json文件。然後用以下代碼替換。
{
"version": "0.1.0",
"command": "g++",
"args": ["-g","${file}","-o","${file}.exe"], // 編譯命令參數
"problemMatcher": {
"owner": "cpp",
"fileLocation": ["relative", "${workspaceRoot}"],
"pattern": {
"regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
"file": 1,
"line": 2,
"column": 3,
"severity": 4,
"message": 5
}
}
}
5)保存一下,然後切換至.cpp文件,再次按F5啓動調試,此時成功調試。
注意:
- 調試代碼前,先將代碼保存爲.cpp文件,再進行調試;
- 代碼文件不要用中文,保存路徑也儘量不要中文,否則可能出現報錯。