VSCode 配置 C++ 环境

VSCode(Visual Studio Code)是一款轻量级的代码编辑器,拥有丰富的插件生态系统,支持多种语言开发。在本文中,作者将介绍如何在 VSCode 中配置 C++ 环境,以便于开发和调试 C++ 代码。

VSCode 具有以下优势:

  • 轻量级:相比于其他 IDE,VSCode 占用的资源更少,启动更快。
  • 插件丰富:VSCode 拥有丰富的插件生态系统,可以满足不同开发者的需求。
  • 跨平台:VSCode 支持在 Windows、macOS 和 Linux 上运行。
  • 集成 Git:VSCode 内置 Git 支持,方便代码版本控制。

1. 配置 C++ 编译器

首先需要安装 C++ 编译器。在 Windows 上,可以安装 MinGW 或者 Visual Studio;在 MacOS 上,可以安装 Clang 或者 Xcode;在 Linux 上,可以安装 GCC。

作者将以 Windows 的 MinGW 为例:

1.1 下载 MinGW

官方下载:https://www.mingw-w64.org/downloads/

sourceforge下载:https://sourceforge.net/projects/mingw-w64/files/

(1)进入 sourceforge 网页,点击 x86_64-win32-seh 进行下载:

注意:

如果因网速等原因下载较慢,可点击链接并输入密码直接获取:https://luguoliang.lanzouk.com/iN7OB0yrr12h 密码:liang

(2)解压该压缩包(x86_64-8.1.0-release-win32-seh-rt_v6-rev0.7z),解压之后会出现一个 mingw64 文件夹:

1.2 添加环境变量

win + i 调出系统设置,在查找设置中输入环境变量,点击编辑账户的环境变量,将 mingw64 下的 bin 路径(作者为 D:\Software\mingw64\bin)添加至用户变量:

注意: 添加完环境变量后,务必重启电脑。

1.3 测试

win + R 输入 cmd 打开 CMD 命令窗口,输入以下指令即可验证 MinGW 是否配置成功:

gcc -v

若输出以下内容,即配置成功:

C:\Users\xxxxx>gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=D:/Software/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/8.1.0/lto-wrapper.exe
Target: x86_64-w64-mingw32
Configured with: ...
Thread model: win32
gcc version 8.1.0 (x86_64-win32-seh-rev0, Built by MinGW-W64 project)

2. 配置编辑器 VSCode

VSCode(Visual Studio Code)是一款流行的跨平台代码编辑器,具有许多特性,使其成为编写 C++ 代码的的理想选择。

2.1 下载 VSCode

进入官网:https://code.visualstudio.com,点击下载:

安装 VSCode(一直默认即可)。

2.2 安装插件

搜索插件 C/C++,点击 Install 下载:

2.3 运行代码

新建一个文件夹 Test 并在 VSCode 中打开,再新建一个 test.cc,输入以下代码:

#include <iostream>

int main(){
    std::cout << "Hello World! 你好呀 C++" << std::endl;

    return 0;
}

点击导航栏中的 Run,选择 Run Without Debugging

点击 C++ (GDB/LLDB),再选择 C/C++:g++.exe

输出如下:

3. 优化

为了更加方便的使用 VSCode 来编写 C++ 代码,将对其进行一些优化,实现以下功能:

  • 打印结果弹窗显示
  • 解决中文乱码问题
  • 收纳 .exe 可执行文件

项目文件结构如下图所示:

  • C++:项目文件
    • .vscode:VSCode 配置文件
      • c_cpp_properties.jsonlaunch.jsontasks.json
    • Code:代码文件
      • build:收纳 .exe 可执行文件

c_cpp_properties.json 内容如下:

{
    "configurations": [
        {
            "name": "Win32",
            "includePath": [
                "${workspaceFolder}/**"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "_UNICODE"
            ],
            "windowsSdkVersion": "10.0.17763.0",
            "compilerPath": "D:\\Software\\mingw64\\bin\\g++.exe", /*bin目录下的g++.exe,两个反斜杠\\*/
            "cStandard": "c11",
            "cppStandard": "c++17",
            "intelliSenseMode": "${default}"
        }
    ],
    "version": 4
}

launch.json 内容如下:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "g++.exe build and debug active file",
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}\\build\\${fileBasenameNoExtension}.exe", /*收纳exe可执行文件*/
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": true,
            "MIMode": "gdb",
            "miDebuggerPath": "D:\\Software\\mingw64\\bin\\gdb.exe", /*bin目录下的gdb.exe,两个反斜杠\\*/
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "task g++"
        }
    ]
}

tasks.json 内容如下:

{
    "version": "2.0.0",
    "tasks": [
        {
            "type": "shell",
            "label": "task g++",
            "command": "D:\\Software\\mingw64\\bin\\g++.exe", /*bin目录下的g++.exe,两个反斜杠\\*/
            "args": [
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\build\\${fileBasenameNoExtension}.exe", /*收纳exe可执行文件*/
                "-fexec-charset=GBK", /*中文乱码*/
                "-I",
                "F:\\C++", /*c/c++项目的文件夹,两个反斜杠\\*/
                "-std=c++17"
            ],
            "options": {
                "cwd": "D:\\Software\\mingw64\\bin" /*bin目录,两个反斜杠\\*/
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": "build",
        }
    ]
}

整体效果如下:

Reference

[1]VsCode安装和配置C++环境详细全流程

[2]VScode中配置C语言/C++运行环境

Logo

一起探索未来云端世界的核心,云原生技术专区带您领略创新、高效和可扩展的云计算解决方案,引领您在数字化时代的成功之路。

更多推荐