之前因爲學了一點html,所以下了一個VS Code來寫html代碼。
今天要寫C++的代碼,以前都是用VS寫的。但是突然想了一下既然都裝了VS Code,爲啥不配置一下。配置好了後以後寫C/C++代碼也不用打開繁重的VS了。而且VS Code還能加很多插件。
說幹就幹,上網找了資料,終於配置好了。還是有蠻多坑的,主要是因爲網上的教程大部分版本比較老了。所以我來寫個教程,方便別人和以後自己在別的電腦上配置。我總結出以下幾步:
1. 下載MinGW-w64並配置系統變量
-
MinGW是是將經典的開源 C語言 編譯器 GCC 移植到了 Windows 平臺下,並且包含了 Win32API ,因此可以將源代碼編譯爲可在 Windows 中運行的可執行程序。
-
但是MinGW的很早就停止維護了,版本很老了。
-
MinGW-w64相當於升級版的MinGW,是一個開源項目,不斷在更新維護着。
-
下載鏈接,劃到最下面,選擇“MinGW-W64 GCC-8.1.0”下的“x86_64-win32-seh”進行下載。
-
下載好後,解壓到自己想要的位置。然後將其中的bin路徑配置到系統變量中。
-
打開cmd,輸入gcc --version和gdb --version,彈出版本信息就說明這一步完成了。
2. 下載插件C/C++,Code Runner
- 在VS Code中下載即可。
3. 配置文件
-
新建一個項目文件夾,在下面建立一個.vscode文件夾,下面建立三個文件,launch.json,tasks.json,c_cpp_properties.json,然後依次把我的代碼複製進去。注意代碼中的“(改爲自己的路徑)”
-
lauch.json
{
"version": "0.2.0",
"configurations": [
{
"name": "C++ Launch (GDB)",
"type": "cppdbg",
"request": "launch",
"targetArchitecture": "x86",
"program": "${workspaceRoot}\\${fileBasenameNoExtension}.exe",
"miDebuggerPath":"D:\\app\\mingw64\\bin\\gdb.exe", (改爲自己的路徑)
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceRoot}",
"externalConsole": true,
"preLaunchTask": "D:/app/mingw64/bin/g++.exe" (改爲自己的路徑)
}
]
}
- tasks.json
{
"version": "2.0.0",
"command": "D:/app/mingw64/bin/g++.exe", (改爲自己的路徑)
"args": ["-g","-std=c++11","${file}","-o","${workspaceRoot}\\${fileBasenameNoExtension}.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
}
},
"tasks": [
{
"label": "D:/app/mingw64/bin/g++.exe", (改爲自己的路徑)
"command": "D:/app/mingw64/bin/g++.exe", (改爲自己的路徑)
"args": [
"-g",
"-std=c++11",
"${file}",
"-o",
"${workspaceRoot}\\${fileBasenameNoExtension}.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
}
},
"group": {
"_id": "build",
"isDefault": false
}
}
]
}
- c_cpp_properties.json
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceRoot}",
"D:/app/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++", (改爲自己的路徑)
"D:/app/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32", (改爲自己的路徑)
"D:/app/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward", (改爲自己的路徑)
"D:/app/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/", (改爲自己的路徑)
"D:/app/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include//c++/tr1", (改爲自己的路徑)
"D:/app/mingw64/x86_64-w64-mingw32/include"
],
"defines": [
"_DEBUG",
"UNICODE",
"__GNUC__=6",
"__cdecl=__attribute__((__cdecl__))"
],
"intelliSenseMode": "msvc-x64",
"browse": {
"path": [
"${workspaceRoot}",
"D:/app/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++", (改爲自己的路徑)
"D:/app/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32", (改爲自己的路徑)
"D:/app/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward", (改爲自己的路徑)
"D:/app/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/", (改爲自己的路徑)
"D:/app/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include//c++/tr1", (改爲自己的路徑)
"D:/app/mingw64/x86_64-w64-mingw32/include" (改爲自己的路徑)
]
},
"compilerPath": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Professional\\VC\\Tools\\MSVC\\14.36.32532\\bin\\Hostx64\\x64\\cl.exe",
"cStandard": "c17",
"cppStandard": "c++17"
}
],
"version": 4
}
-
在項目文件夾中新建cpp文件,隨便寫一個程序。然後F5調試。
-
如果能輸出正確結果就沒問題。如果不能,比如std或者cout報錯的話,就打開設置,在"C/C++"中找到C_Cpp:intelli Sense Engine,將默認的“Default”改爲“Tag Parser”。
-
此時按F5就可以正常實現調試功能了。
-
其實如果你不用調試的話,直接Ctrl + F5用Code Runner跑代碼就行了。