这篇文章写给我的大冤种徒弟,我想她在不久的将来应该就会搜到吧。哈哈哈哈~~
前言
默认情况下 VSCode + Code Runner 无法处理 C/C++ 的多文件编译和调试。我们如果要编译或着调试多文件,那么就必须先通过命令行手动编译源代码,然后修改 VSCode Debug 所需的 launch.json
文件,唯有如此才能正确进行调试。但是在命令行环境中编译和调试程序,要求程序员熟悉编译器的各种编译选项和参数,而且每次编译和调试都必须重新输入编译指令。
显然这种方式很不方便,那么有没有什么可以快速且方便地处理 C/C++ 多文件的方法呢?答案当然是:有。它就是“构建工具”,如 Cmake、Xmake 等等。这些工具本身就是一门语言,但对于 C/C++ 初学者来说学习 C/C++ 语言本身才是主要任务,所以对于这些构建工具的学习我们可以放到学完 C/C++ 语言基本语法之后。
既然构建工具暂时用不了,那我们就换种方式:自己动手配置 VSCode 使之能够编译和调试多文件。下面是我写好的配置,大家可以直接使用这些配置,或者根据自己的需求进行修改。
所需工具
- Visual Studio Code
- GCC
- C/C++ 插件
- Code Runner 插件
关于 Visual Studio Code (VSCode) 和 GCC 编译器的安装与 C/C++ 环境配置请自行在网上搜索相关文章或者观看B站UP主“__gkxx”的这个视频(关于搭环境(C/C++编译器和VSCode的安装、配置)),这里不再赘述。C/C++ 和 Code Runner 这两个插件可以通过 VSCode 插件商店直接安装。
配置多文件编译和调试环境
1)下载所需的配置文件
方式一:使用git
从 github 或者 gittee 上克隆项目:
# 通过 gitee 克隆 (推荐)
git clone https://gitee.com/ylin2345/vscodeConfig.git
# 通过 github 克隆 (速度可能很慢)
git clone https://github.com/Ylin97/vscodeConfig.git
当然,也可以直接去 github 或 gitee 的项目仓库下载压缩包。仓库地址:
Github: https://github.com/Ylin97/vscodeConfig
Gitee: https://gitee.com/ylin2345/vscodeConfig
2)安装配置文件
进入项目文件夹(如果您下载的是 zip压缩包,那么您需要先对它进行解压),然后根据您所使用的操作系统选择进入 Linux 或者 Windows 子文件夹,进行如下操作:
Windows 系统
运行 Windows
文件夹中的setup.py
或者setup.exe
即可完成配置。
Linux 系统
在终端打开Linux
目录,然后执行python ./setup.py
即可完成配置。
3)使用配置文件
用 vscode 打开一个新文件夹,然后在终端使用如下命令来初始化或重置一个项目:
命令 | 功能 |
---|---|
Init-c | 初始化一个 C 项目 |
Init-cpp | 初始化一个 C++ 项目 |
Reset-c | 重置一个 C 项目 |
Reset-cpp | 重置一个 C++ 项目 |
使用Init-c
或Init-cpp
命令后,vscode 的当前工作区会生成以下四个子文件夹和一个.gitignore
文件:
- build : 这里存放编译得到的可执行文件(不带调试信息)
- debug : 这里存放编译得到的可调试的可执行文件(带有调试信息)
- include : 这里是自定义的头文件的存放位置
- source : 这里是
.c
文件或者.cpp
文件的存放位置 - .gitignore : 这是 git 的配置文件
当我们对一个文件夹初始化 (Init-c
或Init-cpp
)后,之后就可以像编译和调试单文件一样点击 vscode 右上角的运行或调试按钮对多文件进行运行或调试了。此外,诸如F5 调试
等快捷键也是支持的。
**注意!**Windows 由于是通过 Powershell 脚本来实现命令的,所以首次运行时可能出现“脚本权限不允许”的报错。这时候需要更改一下系统的脚本执行控制权限:
以管理员身份打开 Powershell,然后执行如下命令:
Set-ExecutionPolicy RemoteSigned
然后在出现的确认信息中输入
y
以确定修改。更多信息请查阅 Set-ExecutionPolicy。
以上就是文章的全部内容,如果大家有问题欢迎再评论区留言,也欢迎大家去 github/gitee 提 Issue.
PS:以上配置仅适用小型项目,对于大中型项目或文件数量过多的项目,还是建议学习使用 Cmake、Xmake 等构建工具。