C/C++编译
一、安装编译器(MinGW-w64)
1. 下载与安装
-
64位下载 :MinGW-w64 x86_64
-
解压到 新目录 (如
D:\mingw64,路径禁止中文/空格)
2. 配置环境变量
- 系统变量 →
Path→ 新增: 例:D:\mingw64\bin - 验证 :命令行输入
gcc --version或g++ --version,显示版本号即成功
二、编译配置与运行
1. 单文件单独编译
1.1 首文件
-
新建
main.c,代码:c例: #include <stdio.h> int main() { printf("C单文件编译成功!\n"); }新建
main.cpp,代码:c例: #include <stdio.h> int main() { printf("C单文件编译成功!\n"); } -
C/C++插件配置

-
创建执行任务(tasks.json)

-
自动生成
tasks.json(配置清单与项目的中间商):json{ "version": "2.0.0", "tasks": [ { "type": "cppbuild", "label": "C/C++: gcc.exe 生成活动文件", "command": "C:/mingw64/bin/gcc.exe", //这里是指定编译器 "args": [ "-fdiagnostics-color=always", "-g", "${file}", //被编译的文件 "-o", "${fileDirname}\\${fileBasenameNoExtension}.exe" //指定生成的可执行文件的路径(默认鼠标所在文件路径) ], "options": { "cwd": "C:/mingw64/bin" }, "problemMatcher": [ "$gcc" ], "group": "build", "detail": "编译器: C:/mingw64/bin/gcc.exe" } ] }
- 运行生成任务

Ctrl+`:打开终端窗口 
1.2 新增文件
当需要添加新代码文件时,可根据代码管理需求选择以下两种方式:
方法1:在当前项目中直接新建文件
适用场景:新增文件与现有文件属于同一项目,无需单独文件夹管理。
方法2:新建独立文件夹以管理代码
适用场景:新增代码需独立管理(如不同项目、版本或模块)。
-
创建新文件夹
- 在磁盘中新建文件夹(如
test)→ 打开VSCode → 点击 【文件】→【打开文件夹】 选择新文件夹。
- 在磁盘中新建文件夹(如
-
复制配置文件
- 将原项目中
.vscode目录(含tasks.json、c_cpp_properties.json等)拷贝到新文件夹中。
- 将原项目中
-
新建、编写、执行
详见 '1.1首文件'
2. 多文件联合编译
适用场景 :项目包含多个源文件(如 main.c + utils.c),需编译为一个可执行程序。
-
打开工程文件夹
- 在VSCode中点击 【文件】→【打开文件夹】 ,选择
multiple_files目录。
- 在VSCode中点击 【文件】→【打开文件夹】 ,选择
-
复用旧项目配置
- 拷贝旧项目中
.vscode文件夹(含tasks.json、c_cpp_properties.json等)到当前工程根目录。
- 拷贝旧项目中
-
改造 tasks.json 配置
-
目标 :编译所有
.c文件,统一生成可执行程序。 -
关键修改 :
json"args": [ "-g", "${workspaceFolder}\\*.c", // 匹配工作区所有 .c 文件 "-o", "${workspaceFolder}\\${workspaceRootFolderName}.exe" // 动态获取工作区文件夹名 // "${workspaceFolder}\\myProgram.exe" 固定输出自定义文件名 ]json"args": [ "-g", "${workspaceFolder}\\*.cpp", // 匹配工作区所有 .cpp 文件 "-o", "${workspaceFolder}\\${workspaceRootFolderName}.exe" // 动态获取工作区文件夹名 // "${workspaceFolder}\\myProgram.exe" 固定输出自定义文件名 ]
-
-
新建、编写、执行
详见 '1.1首文件'
三、调试配置(launch.json)
1. 创建launch.json文件
-
打开调试面板:
- 点击VSCode左侧的调试图标(或使用快捷键
Ctrl+Shift+D),点击"创建launch.json文件"。
- 点击VSCode左侧的调试图标(或使用快捷键
-
选择调试配置:
- 在弹出的选项中选择 【C++(GDB/LLDB)】 。
-
添加调试配置:
- 生成
launch.json文件后,点击文件右下方的 【添加配置】 ,选择 【C/C++:(gdb)启动】 。
- 生成
2. 配置launch.json文件
-
默认配置:
json{ "name": "C/C++: (gdb) 启动", "type": "cppdbg", "request": "launch", "program": "${fileDirname}\\${fileBasenameNoExtension}.exe", "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "externalConsole": false, "MIMode": "gdb", "miDebuggerPath": "gdb" } -
修改配置:
json{ "name": "C/C++: (gdb) 启动", "type": "cppdbg", "request": "launch", "program": "${fileDirname}\\${fileBasenameNoExtension}.exe", //指定可执行程序路径:确保与 tasks.json 中生成的可执行文件路径匹配。 "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "externalConsole": false, "MIMode": "gdb", "miDebuggerPath": "C:\\mingw64\\bin\\gdb.exe" //指定调试器路径:修改为实际的调试器路径,需根据实际安装路径调整。 }json{ "name": "C/C++: (gdb) 启动", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}\\${workspaceRootFolderName}.exe", //指定可执行程序路径:确保与 tasks.json 中生成的可执行文件路径匹配。 "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "externalConsole": false, "MIMode": "gdb", "miDebuggerPath": "C:\\mingw64\\bin\\gdb.exe" //指定调试器路径:修改为实际的调试器路径,需根据实际安装路径调整。 }
3. 开始调试
当launch.json文件配置完成后,即可开始调试:
-
设置断点:
- 在代码行号左侧单击或使用快捷键 F9 插入断点。
-
启动调试:
- 按 F5 开始调试,程序会在断点处暂停。
-
调试快捷键:
- F10:逐过程调试(跳过函数内部)
- F11:逐语句调试(进入函数内部)
-
查看调试信息:启动调试后,可通过监视窗口查看变量值、调用栈等程序执行过程中的信息。