在这个教程中,我们需要配置Visual Studio Code的开发环境,使用mingw-w64中的GCC C++编译器(g++)和GDB调试器来创建可在Windows上运行的程序。
我也是第一次在Windows下配置开发环境,网上视频太多了懒得看,故我去看了官方文档,边实践边写了本文~如有不足请指出谢谢!
我参考的是这个官方文档:https://code.visualstudio.com/docs/cpp/,当然这篇文章是我自己写的。
准备
最基础的
- 安装Visual Studio Code。
- 安装 VS Code 的 C/C++ 扩展。在VSCode左侧扩展中搜索
C++来安装C/C++扩展。

安装 MinGW-w64 工具链
要安装 MinGW-w64 工具链,请按照以下步骤作:
通过以下步骤安装 MSYS2:
- 你可以从MSYS2页面下载最新的安装程序,或者使用这个本站提供的加速镜像直链下载。
- 运行安装程序,按照安装向导的步骤作。
- 在向导中,选择你想要的安装文件夹,推荐默认路径安装
(C:\msys64)。把这个目录记录下来,以备后用。设置开始菜单快捷方式步骤(Start Menu Folder)时也是一样默认就行。完成后,确保勾选“立即运行MSYS2”(Click Finish to close the MSYS2 Setup. ✅Run MSYS2 now.)框并选择完成,会为你打开一个MSYS2终端窗口。
在这个终端中,通过执行以下命令安装 MinGW-w64 工具链:
pacman -S --needed base-devel mingw-w64-ucrt-x86_64-toolchain

按回车键,默认的就行。提示是否继续安装,然后输入Y,就是确定的意思。

当出现如下图所示的提示时代表命令执行完毕,可以进行下一步了。

通过以下步骤将你的 MinGW-w64 文件夹路径添加到 Windows 环境变量:
在Windows开始菜单输入“设置”打开Windows设置。

搜索编辑环境变量。

点击环境变量(N)...。

在你自己的用户变量中,选择Path,然后选择编辑。

选择新建,并将你在安装过程中录制的 MinGW-w64 目标文件夹添加到列表中。如果你使用了上述默认设置,则路径如下: C:\msys64\ucrt64\bin

选择确定,然后在环境变量窗口中再次选择确定以更新环境变量。 你必须重新打开MSYS控制台窗口,更新后的环境变量才可用。
在Windows开始菜单找到并打开MSYS2 UCRT64。

检查 MinGW 是否正确安装
要检查你的 MinGW-w64 工具是否正确安装并可用,请在终端中输入:
gcc --version
g++ --version
gdb --version
如下图所示,你会看到显示你安装了哪些版本的GCC、g++和GDB。

如何利用VSCode创建一个C++程序
首先,让我们先搭建一个项目。
请打开VSCode,选择终端(TERMINAL)

请按顺序执行以下命令:
创建文件夹
输入此命令可以在当前目录下新建一个文件夹并命名为projects。
mkdir projects
进入文件夹
输入此命令可以进入当前目录下的projects文件夹。
cd projects
设置当前文件夹为工作区
“code .”命令会设置当前所在文件夹为你的工作区。在新建的窗口中,通过选择“是,我信任作者”来接受工作空间信任对话框,因为这是你创建的文件夹。
code .
在文件资源管理器(EXPLORER)标题栏中,选择“新建文件”图标按钮,并命名文件为helloworld.cpp。

打开helloworld.cpp,让它成为活动文件(就是正在编辑的文件)。将这段代码粘贴进去:
#include <iostream>
using namespace std;
int main()
{
cout << "Hello World!" << endl;
return 0;
}
按Ctrl+S保存文件,点击编辑区域右上角的三角形按钮。选择Run C/C++ File选项。

选择末尾带有刚刚设置的环境变量路径的编译器:

别担心,你只有在第一次运行时才会被要求选择编译器。选中的编译器将会被设置为文件中的“默认”的编译器。
构建成功后,程序的调试输出会显示在调试控制台中。

我们需要点击终端(TERMINAL)选项返回到终端,查看程序运行的结果。

恭喜嗷!你刚刚在VS Code中运行了你的第一个C++程序!它返回的内容是:
Hello World!
后面的区域你自己再探索吧!官方文档指引:https://code.visualstudio.com/docs/cpp/config-mingw#_understanding-tasksjson
本文就是根据该文档教程经过我实践后修改得到的,重写了很多内容,更加清晰易懂~