本文主要記錄 Visual Studio Code 中配置 C/C++ 的開發環境,包括項目設置、編譯選項和調試配置。VScode是編輯器,我們還需要安裝編譯器,才能實現編寫程序到生成可執行文件這一流程。關于編輯器,編譯器和IDE如果有些分不清,可以看這篇 編輯器,編譯器和IDE的梳理
在VS Code中配置C++開發環境需要完成編譯器安裝、擴展配置和調試環境設置三個核心步驟。具體記錄如下:
一、前置準備
-
安裝VS Code
從VS Code官網下載對應系統版本(Windows/macOS/Linux),按向導完成安裝即可。- 只要操作系統對應上,就沒啥大問題。如果電腦是自己一直用一個賬戶(PIN登錄解鎖)用的,那么
User Installer
和System Installer
安裝哪個沒什么大的差別,用戶版安裝目錄和配置都會生成在用戶目錄下,系統版則是在系統的目錄下。 - 此外, 安裝過程中出現下面這個界面,這里進行了紅字標注做出了說明。全勾選基本沒什么副作用,如果有主用的編輯器(比如Notepad++什么的),倒數第二個可以不用勾選,這個選項的作用就是對某些文件默認打開方式的意思,基本上也就是js,html這些文本文件。
- 只要操作系統對應上,就沒啥大問題。如果電腦是自己一直用一個賬戶(PIN登錄解鎖)用的,那么
-
安裝C++擴展
- 如果不習慣英文,可以在擴展里安裝微軟官方的中文包插件,重新打開VScode生效。
- 打開VS Code → 左側導航欄點擊「擴展」(或按
Ctrl+Shift+X
打開擴展商店)→ 搜索「C/C++」→ 安裝微軟官方的 [C/C++]。
可選裝「C/C++ Extension Pack」(這個是包含調試、格式化等工具)。 - 選擇圖中帶有
Microsoft
認證標識的就對了,官方的,也是最多人選的。 - C/C++的擴展僅僅是方便配置編譯器目錄以及相關的編譯命令的,使用VScode編譯運行指令下,能識別到系統上安裝的編譯器。


二、安裝編譯器(關鍵步驟)
VS Code本身不自帶編譯器,即便是安裝C/C++擴展,也不會自動下載編譯器,我們需根據系統安裝對應的編譯器和工具鏈。
基本上市面主流的編譯器也就三種:GCC/G++,Clang/Clang++,以及MSVC。
如果之前安裝過其他 IDE或者編譯器,比如 Devcpp,codeblocks等,電腦已有的編譯器實際上也可以使用,無需安裝,但是即便安裝了也不會讓電腦爆炸,占空間也不是很大,所以也可以安裝,后期不需要卸載即可。
更多捆綁文章可選擇了解:C/C++的編譯器
1. Windows系統(推薦MinGW-w64)
MinGW-w64 是 GCC/G++編譯器,附帶上 C/C++ 標準庫(如 stdio.h、iostream 對應的實現)、鏈接器(ld)、調試工具(gdb)等,對Windows作出了適配。
換句話說,在windows系統上,想使用GCC/G++編譯器,安裝我就對了,除了編譯功能,在windows運行需要的額外的工作,我都安排好了。
- 下載MinGW-w64
訪問MinGW-w64官網,選擇「Downloads」→ 推薦通過SourceForge鏡像下載,選擇適合的版本(如x86_64-posix-seh
,64位系統推薦)。 - 安裝與配置系統環境變量
配置系統環境變量并非必選項,在VScode中會需要配置,這里配置了只是有利于電腦的程序“識別”,會比較方便用。-
安裝時推薦選擇「Add to PATH」(或手動添加),安裝路徑建議無空格(如
C:\mingw64
)。 -
如果安裝是沒有選擇添加到 PATH,手動打開環境變量,在path下添加路徑,見下文 補充:系統環境變量
-
驗證:按
Win+R
輸入cmd
,執行g++ --version
和gcc --version
,若顯示版本信息則安裝成功。
-
如果在windows想既使用GCC/G++,又想試試Clang/Clang++的,可以參考<留個眼,以后補充>。
至于MSVC,下載安裝Visual Studio(紫色圖標,另一個軟件)一般默認自帶的。
2. macOS系統(使用Clang)
- 打開終端,執行命令安裝Xcode命令行工具:
xcode-select --install
- 驗證:終端輸入
clang --version
,顯示版本信息即成功。
3. Linux系統(使用GCC)
- 終端執行以下命令安裝GCC工具鏈(以Ubuntu為例):
sudo apt update sudo apt install build-essential gdb
- 驗證:輸入
gcc --version
和gdb --version
,顯示版本信息即成功。
三、創建并配置項目
這一段主要流程是創建文件夾,文件夾里新建C文件,C++文件,寫一段測試的代碼。
代碼寫完了,需要配置VScode,讓他能夠找到編譯器路徑,使源代碼能被編譯生成可執行文件。
VScode的配置一般都是通過修改
json
文件實現的,當然也有界面里用鼠標點擊選擇之類的界面操作。前者只針對某個項目文件夾的配置,后者則是全局設置,相當于VScode打開文件夾都默認的配置。若某個項目有json
文件配置,則VScode優先使用json
的設置,否則使用全局配置。
這里介紹的是使用json
文件的配置,只適用于當前項目文件夾,下次打開其他項目文件夾,此json
配置不會湊效,但是可以考慮修改拷貝過去使用。配置文件的好處是到另一個電腦上,微改配置文件就能用了。
配置一般會涉及到兩個文件task.json
和launch.json
。前者是k代碼編譯需要的配置,后者是調試需要的配置。
-
創建項目文件夾
新建一個空文件夾,名字無所謂(如cpp-demo
),用 VS Code打開(「文件」→「打開文件夾」)。雖然名字無所謂,但還是建議,以后編程時 養成使用英文命名項目中文件夾和文件名的好習慣。 -
創建測試代碼
在文件夾中新建hello.c
文件,hello是文件名,c是文件后綴名,表明這是c類型的文件。
輸入基礎代碼,先不管它什么意思:
#include <stdio.h> int main(){printf("Hello World");getchar();return 0; }
-
配置編譯任務(tasks.json)
編譯任務用于告訴 VS Code 如何調用 g++ 編譯代碼,用于定義編譯命令:- 按
Ctrl+Shift+P
打開命令面板,輸入「Tasks: Configure Default Build Task」→ 選擇「C/C++: g++ 生成活動文件」(Windows)或「C/C++: clang++ 生成活動文件」(macOS/Linux)。
彈窗會有提示你的編譯器路徑,選擇剛才安裝的編譯器路徑即可(或者電腦已有的編譯器路徑),此處的選擇會自動把下面的 “command” 填好。 - 上一步選擇好之后,會自動生成
.vscode/tasks.json
,默認配置如下(可根據需要修改):
其中,"label"是自動生成的,編譯時顯示的任務名,可自行修改,后面配置launch
也會要用到。
"command"是必填項,配置編譯器路徑,上一步會自動生成,可自行檢查路徑是否正確。如果想換編譯器,在這里改即可。
"args"最后一個參數是生成可執行文件exe
,一般為同名exe文件。可鼠標懸停查看具體釋義。{"version": "2.0.0","tasks": [{"type": "cppbuild","label": "C/C++: gcc.exe 生成活動文件", // 任務名稱,調試配置在 launch.json文件,需匹配"command": "C:\\msys64\\ucrt64\\bin\\gcc.exe", // 編譯器路徑(Windows為mingw64的g++.exe路徑,識別成功會自動寫好,否則自己改"args": [ // 編譯參數"-fdiagnostics-color=always","-g", // 生成調試信息"${file}", // 當前活動文件"-o", // 輸出文件名"${fileDirname}\\${fileBasenameNoExtension}.exe" // 輸出路徑(與源文件同目錄)],"options": {"cwd": "${fileDirname}"},"problemMatcher": ["$gcc"],"group": {"kind": "build","isDefault": true //默認編譯器的意思},"detail": "編譯器: C:\\msys64\\ucrt64\\bin\\gcc.exe"}] }
- 按
-
配置調試環境(launch.json)
調試配置用于告訴 VS Code 如何調用 gdb 進行調試,用于設置調試參數:- 點擊左側「運行和調試」(或按
Ctrl+Shift+D
)→ 點擊「創建launch.json文件」→ 選擇「C++ (GDB/LLDB)」→ 選擇對應編譯器(如g++
)。 - 自動生成
.vscode/launch.json
,關鍵配置如下:
其中,"program"就是之前生成的exe路徑, 需要替換一致。
"preLaunchTask"一定要放在"miDebuggerPath"之前,意思是調試程序之前編譯。與task.json
中的label
要一致,拷貝過來即可。
“miDebuggerPath” 設置的是調試器的路徑,一般與編譯器同文件夾,文件名為gdb.exe
。自行檢查是否存在且路徑正確。{"version": "0.2.0","configurations": [{"name": "(gdb) 啟動","type": "cppdbg","request": "launch","program": "${fileDirname}\\${fileBasenameNoExtension}.exe", //待調試的程序路徑。是需要自己改的,換成task.json中的輸出路徑即可。"args": [],"stopAtEntry": false, // 是否在main函數處斷點(暫停)"cwd": "${fileDirname}","environment": [],"externalConsole": false, // 是否使用外部控制臺,這里在VScode終端,true則是用黑框"MIMode": "gdb","preLaunchTask": "C/C++: g++ 生成活動文件", // 必須項。調試前執行的任務(需與tasks.json的label一致)"miDebuggerPath": "C:\\msys64\\ucrt64\\bin\\gdb.exe", // 調試器路徑(Windows為mingw64的gdb.exe路徑,一般與gcc.exe同目錄)"setupCommands": [{"description": "為 gdb 啟用整齊打印","text": "-enable-pretty-printing","ignoreFailures": true},{"description": "將反匯編風格設置為 Intel","text": "-gdb-set disassembly-flavor intel","ignoreFailures": true}]}] }
- 點擊左側「運行和調試」(或按
四、測試配置
-
編譯運行
編譯:
打開hello.cpp
,按Ctrl+Shift+B
執行編譯任務,成功后,這里的配置會在同目錄生成hello.exe
。
運行:
方法 1(僅運行):在 VS Code 終端中輸入.\hello.exe
執行。
方法 2(調試運行):按下 F5 啟動調試,可設置斷點、單步執行等(調試控制臺會顯示輸出)。 -
調試代碼
在代碼中設置斷點(點擊行號左側會設置紅點),按F5
啟動調試,可使用「繼續(F5)」「單步跳過(F10)」「單步調試(F11)」等功能。
運行結果為 Hello World
。
五、常見問題解決 FAQ
-
“找不到gcc/clang”
- 檢查編譯器是否安裝,找到mingw的安裝目錄,看看是否有
gcc。exe
這個程序。 - VScode中的task配置文件路徑是否對應上。
如果是使用全局設置,在設置中,找到C/C++擴展的環境(編譯器)路徑是否對應。
- 檢查編譯器是否安裝,找到mingw的安裝目錄,看看是否有
-
中文亂碼
在tasks.json
的args
中添加-fexec-charset=GBK
(Windows)或-fexec-charset=UTF-8
(跨平臺)。 -
調試時無法命中斷點:
確保 tasks.json 中包含 -g 選項(生成調試信息),且launch.json
的preLaunchTask
與編譯任務的label
一致。 -
不是內部或外部的命令
在終端或者命令行,輸入程序(exe)名未被識別到才會提示這段反饋。
設置過系統環境變量情形:在任意一個命令行中輸入,都是會檢測識別到的,檢查環境變量是否設置正確,以及命令是否輸錯了。
沒有配置環境變量情形:需要在終端/命令行,進入相對應的exe文件所在目錄,再輸入程序名。 -
右下角總是彈窗:
“‘cl’ 不是內部或外部命令,也不是可運行的程序或批處理文件。”
“cl.exe” build and debug is only usable when VS Code is run from the Developer Command Prompt for VS. 的問題。這是因為你配置的編譯器使用的是
cl.exe
,這是MSVC
編譯器,你的電腦大概率安裝了Visual Studio,并且沒有添加到系統環境變量。
微軟的cl.exe
(MSVC 編譯器)依賴一系列特殊的環境變量(如編譯器路徑、庫路徑、頭文件路徑等),這些變量只有在 “VS 開發者命令提示符” 中才會被自動加載。
直接雙擊啟動 VS Code 時,它繼承的是系統默認環境變量,會缺少這些關鍵配置,因此無法正常使用cl.exe
進行編譯和調試。
解決方案一: 從Deveioper Command Prompt for ***打開VScode。開始菜單找到類似圖中的程序,或者直接使用win+s
搜這個名字,可能會因版本不同最后的名字不一樣。啟動之后,會發現這個程序就是一個黑框終端,在終端輸入code
回車即可打開VScode(前提是VScode添加到PATH),現在打開的就不會報錯。
解決方案二: 將編譯器路徑改成其他路徑編譯器,不使用MSVC編譯器。
補充:系統環境變量
- 打開系統屬性。快捷鍵
win+r
喚出運行,輸入sysdm.cpl
,打開系統屬性。全稱大概是(system data manager . Control Panel extension) - 在高級中,找到環境變量。
- 在用戶變量和系統變量中,各自有一個path。實際運行時,系統會先找到用戶變量中的內容,找不到再去找系統變量中的path,所以這兩者隨便選一個添加即可。建議安裝在用戶下的程序添加用戶變量,管理員權限的添加在系統變量下。
- 雙擊path,會跳出編輯的彈窗,新建即可添加程序的路徑。
建議使用瀏覽尋找,找到exe所在目錄即可。比如如果手動配置GCC編譯器,找到gcc.exe
,一般就是bin目錄。
也可以直接編輯,粘貼程序的目錄。但是要注意不能拼錯。
總結
核心步驟是:配置 MinGW 環境變量 → 安裝 C/C++ 擴展 → 生成并修改 tasks.json(編譯)和 launch.json(調試)。通過這種配置,VS Code 能直接調用 GCC 工具鏈,實現 C 代碼的編譯、運行和調試,此外,C++代碼的配置與之類似,只不過編譯器為g++.exe
。
參考:
我寫的很亂,這個博主很詳細:VS Code 配置 C/C++ 編程運行環境(保姆級教程)
https://blog.csdn.net/qq_43328313/article/details/138898223
https://blog.csdn.net/Natsuago/article/details/145507915