2019-06-10 更新: 加上Mac版本的Vscode配置文件
0、前言
實現效果:右鍵一鍵編譯運行C/C++文件
Vs code的代碼效果很好看,也很輕量,所以想為Vs Code配置C/C++環境,折騰了一個下午,實現的最終效果是:可以在Vs code里面一鍵編譯運行C/C++文件(效果和自己在終端輸入命令一樣)。
但是請注意:這里的設置並沒有弄調試環境。只是設置了編譯和運行。
1、安裝g++/gcc
Windows 是默認不帶g++/gcc的,所以需要自己下載配置。 而Mac自帶gcc/g++,不需要額外安裝~
- 下載Mingw安裝包 ,
mingw-get-setup.exe
(https://osdn.net/projects/mingw/releases/) - 打開安裝包,一路next。完成后會彈出一個管理窗口。
- 在該窗口中,右鍵
mingw32-gcc-g++-bin
,點擊mark for installation
。 - 點擊左上角的
installation
,選擇Apply changes
。 - 等待完成
- 設置環境變量。增加一個PATH:
C:/MinGW/bin
(默認安裝是這個路徑,如果安裝時修改了,請修改到實際路徑。) - 打開cmd窗口,輸入
g++ -v
,若有結果,則正常。
2、安裝Vs Code
- 去官網下載即可。
3、設置一鍵編譯運行
如果每次都得輸命令編譯,會變得非常麻煩。這里提供一個方法,可以在Vs code里面一鍵編譯運行C/C++文件。(效果和自己在終端輸入命令一樣)
- 下載
Vs code
拓展Code Runner
- 打開
Vs code
的設置。(左上角的Preference
-->Setting
) - 在Setting文件中
增加
以下內容
3.1、Windows 版本配置文件
"code-runner.runInTerminal": true,
// 如果你全局設置中的默認終端是 WSL 之類的,那么可以在工作區設置中改回 PowerShell
//"terminal.integrated.shell.windows": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
// 運行代碼之前清除之前的輸出
"code-runner.clearPreviousOutput": true,
// 開啟這個后在運行編譯命令之前會自動 cd 至文件所在目錄
"code-runner.fileDirectoryAsCwd": true,
// 為了避免源碼文件和編譯結果混雜在一個目錄,這里將輸出目錄修改為 build 文件夾
// 注意:請手動創建build文件夾。否則無法編譯。
// 這里只保留了 C 和 C++ 的編譯命令,有需要其他語言的請自行添加
"code-runner.executorMap": {
"c": "gcc \"$fileName\" -o \"D:/build/$fileNameWithoutExt\" && D:/build/\"$fileNameWithoutExt.exe\"",
"cpp": "g++ \"$fileName\" -o \"D:/build/$fileNameWithoutExt\" && D:/build/\"$fileNameWithoutExt.exe\"",
},
// 運行代碼后切換焦點至終端,方便直接輸入測試數據
"code-runner.preserveFocus": false,
// 在運行代碼之前保存文件
"code-runner.saveFileBeforeRun": true
3.2、Mac 版本配置文件
其實和windows版本的是一樣的~
// 在終端中運行編譯命令,否則我們無法與程序通過標准輸入交互
"code-runner.runInTerminal": true,
// 運行代碼之前清除之前的輸出
"code-runner.clearPreviousOutput": true,
// 開啟這個后在運行編譯命令之前會自動 cd 至文件所在目錄
"code-runner.fileDirectoryAsCwd": true,
"code-runner.executorMap": {
"c": "gcc $fileName -o $fileNameWithoutExt && ./$fileNameWithoutExt",
"cpp": "g++ $fileName -o $fileNameWithoutExt && ./$fileNameWithoutExt",
"python":"python $fileName",
},
// 運行代碼后切換焦點至終端,方便直接輸入測試數據
"code-runner.preserveFocus": true,
// 在運行代碼之前保存文件
"code-runner.saveFileBeforeRun": true
到此,面對單文件的C++文件,直接在Vs code里面右鍵,選擇Run code
即可運行。
4、參考文章
1、使用 VS Code 搭建適用於 ACM 練習的 C/C++ 開發環境
2、Visual Studio Code (vscode) 配置C、C++環境/編寫運行C、C++(主要Windows、簡要Linux)