5,107
社区成员




前言
随着编程语言和开发工具的不断发展,开发者对编辑器的要求也日益提高。VS Code(Visual Studio Code)因其轻量、开源、插件丰富、跨平台等特性,已成为全球众多开发者的首选。特别是对于 C/C++ 开发,VS Code 通过插件的强大扩展能力,让开发、编译、运行、调试等功能更加便捷高效。
本教程将以 Windows 11 系统为例,手把手教你在 VS Code 中搭建 C/C++ 开发环境。我们将涵盖以下内容:
.c
文件; 首先,您需要前往 VS Code 官方网站 以获取适用于您操作系统的安装包。
Download for Windows
按钮。 .exe
安装文件开始安装。 .exe
文件)。D盘
或E盘
等非系统盘,如E:\Microsoft VS Code
,然后一直点击 “下一步(N)”。如果您希望使用中文界面,可以安装 Chinese (simplified)(简体中文) Language Pack for Visual studio Code
扩展:
Ctrl+Shift+X
进入扩展商店。 Change Language and Restart
,重新启动 VS Code 后,界面即变为中文。推荐使用 MinGW-W64 或者 MSYS2 提供的 GCC 编译器,本文以 MSYS2 为例作演示。
msys2-x86 64-20241208.exe
(记住前缀是 msys2-x86_64 就行,后面是日期),点击下载。注意:MSYS2 需要 64 位 Windows 8.1 及以上版本。
注意:MSYS2 需要 64 位 Windows 8.1 及以上版本。
msys2-x86_64-20241208.exe
,打开界面后点击 Next >
D盘
或E盘
等非系统盘,如E:\msys64
,然后一直点击 “Next >”(记住该路径后面配置环境变量需要)
+ 出现这个界面,直接按回车键,默认接受所有的安装包。

+ 当系统提示是否继续安装时,输入`y`并回车,随后进入安装过程,稍等片刻。

+ 所有的包都安装完毕后,直接关闭终端。

+ **配置环境变量**
+ 打开安装 MSYS2 的目录,找到`ucrt64`文件夹并进入,再找到 `bin`文件夹并进入,然后在地址栏中,复制路径。

+ 打开 **系统属性 -> 高级系统设置 -> 环境变量**,在 `Path` 变量中添加 `E:\msys64\ucrt64\bin` ,然后依次点击三个确认退出。

+ 调出 cmd 的终端窗口了,然后分别输入下面的命令,每输入一次命令后回车一次:
```bash
gcc --version
g++ --version
gdb --version
C/C++
扩展 必装,C/C++ Extension Pack
扩展 选装。C/C++ Extension Pack
是 C/C++ 的扩展功能包,里面包含了一些项目管理和代码构建的工具,不是必要的扩展包,可以选择性安装。C_CPP_Project
,然后打开 VS Code 并进入该目录,也可以直接将文件夹图标拖拽至 Visual Studio Code
图标处(文件夹最好不要包含中文)。在该文件夹内创建 test.c
,输入以下内容,然后点击 Ctrl + s
进行保存。
```c
#include <stdio.h>
int main()
{
for (int i = 0; i < 5; i++)
printf("Hello Grayson~%d\n", i);
return 0;
}
+ 点击右上角的调试按钮,这时会弹出调试程序的选项,选择第一个,也是本教程前面安装的 gcc 编译工具。

+ 这时文件就被编译并执行,运行结果如下。

+ 如果要进行简单的断点调试,可以在行号前加一个断点,操作也很简单,只需用鼠标左键点一下行号左边的空白处即可。如下图所示,是在第六行处加了一个断点。

+ 这时再去运行程序,搜索框下面就会出现调试的面板,面板上有六个按钮,分别是继续、逐过程、单步调试、单步跳出、重启和停止。

以下是 VS Code 中的 C 语言代码调试面板功能的解释:
+ 继续(Continue):继续执行程序,直到遇到下一个断点或程序结束。
+ 逐过程(StepOver):逐行执行当前行,如果当前行是函数调用,则进入该函数并执行完毕。
+ 单步调试(StepInto):逐行执行当前行,如果当前行是函数调用,则进入该函数并停在函数内的第一行。
+ 单步跳出(StepOut):执行完当前函数的剩余部分,并停在当前函数被调用的下一行。
+ 重启(Restart):重新启动程序的调试会话,即从程序的起点开始执行。
+ 停止(Stop):停止程序的调试会话,结束调试过程并关闭程序执行。
以下是 VS Code 中的 C 语言代码调试面板功能的解释:
+
+ 继续(Continue):继续执行程序,直到遇到下一个断点或程序结束。
+
+ 逐过程(StepOver):逐行执行当前行,如果当前行是函数调用,则进入该函数并执行完毕。
+
+ 单步调试(StepInto):逐行执行当前行,如果当前行是函数调用,则进入该函数并停在函数内的第一行。
+
+ 单步跳出(StepOut):执行完当前函数的剩余部分,并停在当前函数被调用的下一行。
+
+ 重启(Restart):重新启动程序的调试会话,即从程序的起点开始执行。
+
+ 停止(Stop):停止程序的调试会话,结束调试过程并关闭程序执行。
---
## 五、多个 `c文件` 的运行与调试
+ 如果想要进行多个 `.c` 文件编译后的调试,就需要进行一些配置修改。如果进行过一次编译运行,我们会发现在资源管理器的C文件夹下,多出一个.vscode的文件夹,这个文件夹里面有个tasks.json的文件。

这个文件是用于定义任务配置,这些任务可以在 VS Code 中运行,例如编译代码、运行测试、启动调试器等。
tasks.json文件是一个JSON格式的文件,其中包含了任务的配置信息,包括任务名称、命令、参数等。通过编辑tasks.json文件,我们可以自定义项目中的各种任务,并在VS Code 中方便地执行这些任务。
这个文件是用于定义任务配置,这些任务可以在 VS Code 中运行,例如编译代码、运行测试、启动调试器等。
tasks.json文件是一个JSON格式的文件,其中包含了任务的配置信息,包括任务名称、命令、参数等。通过编辑tasks.json文件,我们可以自定义项目中的各种任务,并在VS Code 中方便地执行这些任务。
+ 当前的 VS Code 的运行效果还不是很理想,双击打开tasks.json文件修改一下编译运行功能。下图是对该 JSON 文件做了部分解释。

+ 具体修改如下所示,我注释掉了原来的 `"${file}"`,并将其改为手动列出所有 `.c` 文件路径(如 `max.c` 和 `test2.c`,**目前找不到其他方便的解决办法,有的话希望评论区留言互相学习一下**)。
这样可以避免 Windows 命令行中通配符无法解析的问题。同时也将 `"${fileDirname}\\${fileBasenameNoExtension}.exe"` 注释掉,改成了 `"${fileDirname}\\program.exe"`,表示编译多个 `.c` 文件后生成的可执行文件为 `program.exe`。
**代码如下,根据实际文件情况修改**,修改好后按组合键 `Ctrl + S` 保存即可。
{
"version": "2.0.0",
"tasks": [
{
"type": "cppbuild",
"label": "C/C++: gcc.exe 生成活动文件",
"command": "E:\msys64\ucrt64\bin\gcc.exe",
"args": [
"-fdiagnostics-color=always",
"-g",
// "${file}", // 注释掉原来的 "${file}"
"${workspaceFolder}\test2\max.c", // 手动列出 .c 文件
"${workspaceFolder}\test2\test2.c",
"-o",
// "${fileDirname}\${fileBasenameNoExtension}.exe", // 注释掉原来的输出文件名
"${workspaceFolder}\test2\program.exe" // 统一生成 program.exe
],
"options": {
"cwd": "${workspaceFolder}\test2"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "调试器生成的任务。"
}
]
}
+ 接着点击 `test2.c` 文件右侧的 `调试 C/C++ 文件`。

+ 可以看到终端成功输出多个`c文件`编译运行以后的结果以及文件夹中生成可执行文件 `program.exe`。

---
## 六、结论
通过本教程的学习和实践,相信你已经成功在 VS Code 中配置好了 C/C++ 开发环境。从安装 VS Code、配置 C/C++ 编译器,到安装插件、调整任务和调试配置,我们覆盖了一个完整的开发流程。
在此过程中,你掌握了以下技能:
+ **如何安装和配置 VS Code**;
+ **如何安装 MSYS2 并配置 GCC 编译器**;
+ **如何安装 C/C++ 插件**;
+ **如何编译、运行、调试单个和多个 `.c` 文件**。
不过,需要提醒的是,由于 **VS Code 不同版本之间可能存在差异**,某些配置在我的电脑上可行,但在你的电脑上可能会出现不同的问题。因此,本教程在多个 `.c` 文件调试方面使用了手动列出文件路径的方式,虽然稍显繁琐,但兼容性和成功率更高,能保证配置在各种环境下稳定运行。如果你有更简便的解决方案,欢迎在评论区留言分享,让更多人受益!😊
希望这篇教程对你有所帮助,愿你在 C/C++ 开发的学习和工作中取得更大的进步。如果在实践中遇到问题,欢迎随时交流讨论。继续探索编程的世界吧,代码的旅程永无止境!🚀
-------------------------------------
**文章来源:** https://blog.csdn.net/Natsuago/article/details/145507915
**版权声明:** 本文为博主原创文章,遵循CC 4.0 BY-SA 知识共享协议,转载请附上原文出处链接和本声明。
-------------------------------------