說到c++編譯運行,大家第一個想到的應該是VS2015這種微軟出的大型IDE,對于一些大型項目也確實應該使用VS這種大型的IDE,但是作為一個業(yè)余的愛好者,只是想使用c++來運行一些東西,比如一些算法問題,那么VS這種大型的IDE就顯得雞肋,還會消耗不必要的內存,這個時候VSCode這種可安裝插件的編輯器就顯得非常高效。
主要步驟
- 安裝VSCode
- 在VSCode內安裝c++插件
- 安裝g++編譯、調試環(huán)境
- 修改VSCode調試配置文件
安裝VSCode
VSCode下載地址
按照步驟安裝
在VSCode內安裝c++插件
Ctrl+P之后輸入
ext install c++
Paste_Image.png
安裝左邊第一個c/c++的插件(微軟的官方插件)。
安裝完成之后重啟VSCode生效。
安裝g++編譯、調試環(huán)境
目前windows下調試僅支持 Cygwin 和 MinGW。這里使用的是MinGW.
Download mingw-get-setup.exe (86.5 kB)
按照流程安裝,安裝完之后打開界面:
Paste_Image.png
安裝此處選中的模塊。全選中之后按左上角Installationt->Apply Changes進行安裝(最好翻墻)。
然后配置環(huán)境變量
別忘了這步就好(不懂配置的可以自己搜索,配環(huán)境變量應該是對程序員而言最見到那的事了)
有時候修改環(huán)境變量需要重啟計算機
修改VSCode調試配置文件
用VSCode打開一個文件夾(因為VSCode會生成一個配置文件,所以必須在一個文件夾內運行)
新建一個a.cpp
寫一個最簡單的程序
Paste_Image.png
點擊右邊的蜘蛛,再點擊左邊調試欄上方的設置按鈕,選擇c++編譯環(huán)境,將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", "# #"], // 程序調試時傳遞給程序的命令行參數(shù),一般設為空即可
"stopAtEntry": false, // 設為true時程序將暫停在程序入口處,一般設置為false
"cwd": "${workspaceRoot}", // 調試程序時的工作目錄,一般為${workspaceRoot}即代碼所在目錄
"externalConsole": true, // 調試時是否顯示控制臺窗口,一般設置為true顯示控制臺
"preLaunchTask": "g++" // 調試會話開始前執(zhí)行的任務,一般為編譯程序,c++為g++, c為gcc
}
]
}
注意miDebuggerPath要與MinGw的路徑對應
Paste_Image.png
替換后保存,然后切換至a.cpp,按F5進行調試,此時會彈出一個信息框要求你配置任務運行程序,點擊它~
選擇任務運行程序,點擊Others,跳出tasks.json的配置文件。
替換成如下代碼
{
"version": "0.1.0",
"command": "g++",
"args": ["-g","${file}","-o","${file}.exe"], // 編譯命令參數(shù)
"problemMatcher": {
"owner": "cpp",
"fileLocation": ["relative", "${workspaceRoot}"],
"pattern": {
"regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
"file": 1,
"line": 2,
"column": 3,
"severity": 4,
"message": 5
}
}
}
保存一下,然后切換至a.cpp,再次按F5啟動調試
Paste_Image.png
然后就可以設置斷點調試了