下载C/C++编译器
当前主流的C/C++编译器是gcc/g++,可以通过MinGW下载。
MinGW有32位和64位版本,推荐使用64位版,因为32位的gcc/g++版本较低,且会在VScode的调试界面出现bug。
在MinGW-64下载地址 查找符合自己版本的MinGW下载(默认是Linux系统)。
对于Windows系统,推荐在对应的Github页面
下载x86_64-15.2.0-release-win32-seh-ucrt-rt_v13-rev0.7z版本。下载完成后解压。
另一种获取编译器的方法是先下载一个IDE,如Dev-C++,小熊猫C++等。在其程序目录下通常会有编译器文件,可之后直接使用。

IDE附赠的编译器
配置环境变量
环境变量是计算机中的一个重要参数,它指明了在终端中输入命令的来源和功能。若缺少对应的环境变量,一些命令会显示“无法识别”。
- 找到并记住
g++.exe文件所在目录,通常为.\mingw64\bin。

g++.exe文件地址
-
Win11系统下打开
设置→系统→系统信息,在“相关信息”中打开“高级系统设置” -
在弹出窗口中选择“环境变量”,在新窗口中选择
系统变量→Path→编辑,再在新窗口中选择新建,粘贴g++.exe文件所在的地址。之后一直点击“确定”关闭所有窗口。 -
在
cmd窗口中输入g++ --version,若显示版本等信息则表示环境变量配置成功。

环境变量
注意:配置完 Windows 中的环境变量之后,必须重启 cmd 之后才会在 cmd 中生效。
配置VScode
了解配置原理
这部分会比较抽象,省时间可以跳过。
VScode默认有3套配置文件,均位于文件夹.vscode下。
可以通过打开设置看到:用户区、工作区、SSH。
| 区域 | 特点 |
|---|---|
| 用户区 | 可看作“全局配置”,在整个用户计算机(就是你的电脑上)均生效 |
| 工作区 | 仅在当前打开的文件夹内有效 |
| SSH | 当且仅当连接到SSH远程计算机时才会出现,实际上就是远程计算机的用户区配置文件 |
因此,若要配置运行环境,应当先创建一个文件夹作为“工作区”,然后将配置文件、源代码等文件全部放入。此后写代码和调试时都应在此文件夹中进行。
配置运行环境
-
创建新文件夹
workspace作为工作区,在workspace文件夹内再创建文件夹.vscode和bin -
在
.vscode文件夹内再创建文件,分别命名为tasks.json和launch.json
| 文件名 | 作用 |
|---|---|
tasks.json |
终端任务文件,定义在终端执行的任务。在这里用于C/C++可执行文件的构建和运行 |
launch.json |
运行任务文件,定义按F5调试时的任务。在这里用于C/C++可执行文件的调试 |
也就是说,如果只是要构建和运行C/C++程序,可以只用写
tasks.json。
tasks.json文件写入以下内容:
1{
2 "version": "2.0.0", // 版本号,建议保持不变
3 "tasks": [
4 {
5 "label": "构建C/C++文件", // 任务名称,选择任务时将会看到
6 "type": "shell", // 任务类别,shell表示在终端运行
7 "command": "g++", // 命令名称
8 "args": [ // 命令参数(可自行修改)
9 // 表示将会被替换为所操作的.cpp文件
10 "${file}",
11 "-o",
12 // 可执行文件生成的位置
13 "${workspaceFolder}\\bin\\${fileBasenameNoExtension}.exe",
14 "-g",
15 "-Wall",
16 "-static-libgcc",
17 // 编码,默认为UTF-8
18 "-fexec-charset=UTF-8",
19 // 构建的C++标准
20 "-std=c++14"
21 ],
22 "group": "build",
23 "presentation": {
24 "echo": true,
25 "reveal": "always",
26 "focus": false,
27 "panel": "new"
28 },
29 "detail": "生成可执行文件", // 任务注释,显示为任务名称的下行小字
30 "problemMatcher": "$gcc"
31 },
32
33 {
34 "label": "构建并运行C/C++文件",
35 "type": "shell",
36 "dependsOn": "构建C/C++文件",
37 "command": "${workspaceFolder}\\bin\\${fileBasenameNoExtension}.exe",
38 "group": {
39 "kind": "build",
40 "isDefault": true // 设置为默认操作
41 },
42 "presentation": {
43 "echo": true,
44 "reveal": "always",
45 "focus": true,
46 "panel": "new"
47 },
48 "detail": "调试器生成的任务",
49 "problemMatcher": []
50 }
51 ]
52}
在
.json文件中,所有的\都应输入成\\,这一过程称为转译。
配置完成后,点击 终端→运行任务→选择所需的任务 即可构建或运行程序。或直接按Ctrl+Shift+B运行默认任务,上例中为"构建并运行C/C++文件",相当于在终端中执行命令:
1g++ file.cpp -o file.exe -g -Wall -static-libgcc -fexec-charset=UTF-8 -std=c++14
2file.exe

构建并运行C++程序
launch.json文件(可选)写入以下内容:
1{
2 "version": "0.2.0",
3 "configurations": [
4 {
5 // 单文件调试
6 "name": "Debug for one file",
7 "type": "cppdbg", // cppdbg对应cpptools提供的调试功能;只能是cppdbg
8 "request": "launch",
9 // 这里program指编译好的exe可执行文件的路径,与tasks中要对应
10 "program": "${workspaceFolder}\\bin\\${fileBasenameNoExtension}.exe",
11 "args": [],
12 "stopAtEntry": false, // 是否在main处打断点
13 "cwd": "${fileDirname}", // 调试程序时的工作目录
14 "environment": [],
15 "externalConsole": false, // 改为true时为使用cmd终端
16 "internalConsoleOptions": "neverOpen", // 设为true为调试时聚焦调试控制台
17 "MIMode": "gdb",
18 // 指定调试器所在路径,注意间隔是\\,请修改为你的路径
19 "miDebuggerPath": "D:\\Developer\\mingw64\\bin\\gdb.exe",
20 // 调试开始前执行的任务,必须与tasks.json的label相对应
21 "preLaunchTask": "构建C/C++文件"
22 }
23 ]
24}
配置完成后,点击 运行→启动调试 即可开始调试。或直接按F5运行。
- 之后,所有新建的
C++文件都应在有配置文件的工作区中,这样可以直接在VScode中测试。
如果按照以上方法配置,工作区的文件结构应该如下所示:
1workspace/
2├── .vscode/ # 存放配置文件
3│ ├── launch.json
4│ └── tasks.json
5│
6├── bin/ # 存放构建的exe文件
7│ ├── HelloWorld.exe
8│ ├── Number.exe
9│ └── {name}.exe
10│
11├── HelloWorld.cpp # 存放源代码
12├── Number.cpp
13└── {name}.cpp