Vscode 搭建 C / C++ 开发环境

简介: 将士出征,怎能没有一把利器,本文基于 VSC 搭建 C++ 开发环境

相信多数计算机专业的同学都和我一样,步入大学首先要学习的就是 C 语言。那么,我想下面这个东西你一定见过

记得当时令我好奇的就是,为什么这个 VC++6.0 里,行号、插件、快捷键……什么都没有呢??于是,历经 CodeBlocks、DevC++、VC++6.0 等编辑器后,我找到了致胜的法宝,今天的主角——VScode,这款工具在之前的博文中就有过推荐,点我直达

下面我们来一起配置下 C++ 的开发环境

Vscode — 编辑器

编辑器就是你写代码的地方,一款好的编辑器支持语法高亮、超多快捷键、代码提示等诸多功能

访问官网下载,不做细节介绍,一个字“好”

傻瓜式操作,直接下一步即可安装成功

mingw64 — 编译器

将源码文件编译为计算机能够执行的二进制代码文件,简单来说,代码是写给人看的,二进制文件是电脑看的,代码是人和机器交流的通道

访问链接,下载编译器

将下载下来的文件解压后,放到 C:\Program Files 文件夹下

添加环境变量 Path系统->关于->高级系统设置

编辑 Path 变量

加入 C:\Program Files\mingw64\bin,然后一路确定下去

cmd 窗口键入 gcc --version 验证配置状态

显示图示信息则配置成功

插件支持

安装 C++ 语言支持拓展包

安装 coderunner (一键执行源程序)

.vscode 配置文件

打开 vscode,导入一个空文件夹

点击新建文件夹按钮

命名为 .vscode,然后点击新建文件按钮,依次建立图示文件结构

其实对应的文件名称在后期编译时,vscode 会自动生成,但由于默认配置不太友好(比如生成的 exe 文件都在源文件下方,非常混乱),我们对此进行优化配置,==注意对应的路径请填写你的配置路径==

下面给出常用的配置文件(包含 .exe 重定向),可直接保存使用,定向 详细参考

c_cpp_properties.json

{
    "configurations": [
        {
            "name": "Win32",
            "includePath": [
                "${workspaceFolder}/**"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "_UNICODE"
            ],
            "windowsSdkVersion": "10.0.17763.0",
            "compilerPath": "C:\\Program Files\\mingw64\\bin\\gcc.exe",
            "cStandard": "c17",
            "cppStandard": "c++17",
            "intelliSenseMode": "gcc-x64"
        }
    ],
    "version": 4
}

launch.json

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        
        {//包含Debug配置
            "name": "gcc.exe - 生成和调试活动文件",//配置名称
            "type": "cppdbg", //配置类型,对应cpptools提供的调试功能
            "request": "launch", //请求配置类型,可以是启动/附加类型[launch/attach]
            //"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
            "program": "${workspaceFolder}\\build\\${fileBasenameNoExtension}.exe",//待调试程序本地路径
            "args": [], //程序调试时传递给程序的命令行参数,设为空值
            "stopAtEntry": true,//改为true时程序暂停在程序入口位置,即main处打上断点
            "cwd": "${fileDirname}", //调试程序时的工作目录,这里表示源码目录
            "environment": [], //环境变量,设为空值
            "externalConsole": false, //true:cmd窗口; false:Vscode的内置终端输出
            "MIMode": "gdb", //指定连接的调试器,gdb为minGW64中调试程序
            "miDebuggerPath": "C:\\Program Files\\mingw64\\bin\\gdb.exe", //指定调试器所在路径,安装位置不同注意需要修改,间隔为\\
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "C/C++: gcc.exe 生成活动文件" //调试开始前执行需要执行的任务,调试前要编译构建 名称要和tasks.json的label保持一致
        }
    ]
}

tasks.json

{
    "tasks": [
        {//构建配置项
            "type":"shell",//任务类型,Vscode将预定义变量转义解析后直接传给command;shell->先打开shell再输入命令,因此args会经过shell再次解析
            "label": "C/C++: gcc.exe 生成活动文件",//任务名称
            "command": "C:\\Program Files\\mingw64\\bin\\gcc.exe",//本地编译器路径
            "args": [ //包含传给gcc命令的参数,用于实现特定功能
                "-g", //生成和调试有关的信息
                "${file}", //指定编译文件为当前文件
                "-o",//指定输出文件的路径和名称
                //"${fileDirname}\\${fileBasenameNoExtension}.exe"
                "${workspaceFolder}\\build\\${fileBasenameNoExtension}.exe"//修改.exe文件生成位置
            ],
            "options": {
                //"cwd": "${fileDirname}"
                "cwd": "C:\\Program Files\\mingw64\\bin"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {//包含很多task,归为group
                "kind": "build",//表名该组任务类型是构建
                "isDefault": true//表明此任务为此组任务中的默认任务
            },
            "detail": "调试器生成的任务。"
        }
    ],
    "version": "2.0.0"
}

环境验证

输入经典的 HelloWorld 程序,测试下环境

/*
 * @Author: coder-jason
 * @Date: 2022-04-04 09:57:31
 * @LastEditTime: 2022-04-04 09:57:32
 */
#include <iostream>
using namespace std;

int main()
{
   cout<<"Hello World!"<<endl;
   return 0;
}

如果你是用了上方的配置文件,请在根目录下新建 build 文件夹,exe 文件会自动归类到此文件下

如果没有新建 build 文件夹,系统会提示你没有这样的文件夹,也就是找不到输出目录

相关实践学习
阿里云图数据库GDB入门与应用
图数据库(Graph Database,简称GDB)是一种支持Property Graph图模型、用于处理高度连接数据查询与存储的实时、可靠的在线数据库服务。它支持Apache TinkerPop Gremlin查询语言,可以帮您快速构建基于高度连接的数据集的应用程序。GDB非常适合社交网络、欺诈检测、推荐引擎、实时图谱、网络/IT运营这类高度互连数据集的场景。 GDB由阿里云自主研发,具备如下优势: 标准图查询语言:支持属性图,高度兼容Gremlin图查询语言。 高度优化的自研引擎:高度优化的自研图计算层和存储层,云盘多副本保障数据超高可靠,支持ACID事务。 服务高可用:支持高可用实例,节点故障迅速转移,保障业务连续性。 易运维:提供备份恢复、自动升级、监控告警、故障切换等丰富的运维功能,大幅降低运维成本。 产品主页:https://www.aliyun.com/product/gdb
相关文章
|
29天前
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
244 3
|
1月前
|
Linux C语言 C++
vsCode远程执行c和c++代码并操控linux服务器完整教程
这篇文章提供了一个完整的教程,介绍如何在Visual Studio Code中配置和使用插件来远程执行C和C++代码,并操控Linux服务器,包括安装VSCode、安装插件、配置插件、配置编译工具、升级glibc和编写代码进行调试的步骤。
177 0
vsCode远程执行c和c++代码并操控linux服务器完整教程
|
5月前
|
编译器 C语言 C++
【VS Code】安装配置调试C/C++(一)
【VS Code】安装配置调试C/C++(一)
97 0
|
3月前
|
编解码 编译器 C++
VS Code C/C++ MSVC编译器
VS Code C/C++ MSVC编译器
69 2
|
3月前
|
NoSQL 编译器 C语言
VSCode配置配置C++环境
VSCode配置配置C++环境
93 1
|
3月前
|
C语言 C++
vscode——如何在vscode中运行C/C++
vscode——如何在vscode中运行C/C++
52 1
|
3月前
|
编译器 C++
VS Code设置C++编译器路径
VS Code设置C++编译器路径
45 0
|
5月前
|
项目管理 C++
【VS Code】安装配置调试C/C++(二)
【VS Code】安装配置调试C/C++(二)
89 1
|
6月前
|
编译器 C语言 C++
VSCode上搭建C/C++开发环境(vscode配置c/c++环境)Windows系统---保姆级教程
VSCode上搭建C/C++开发环境(vscode配置c/c++环境)Windows系统---保姆级教程
|
1天前
|
存储 编译器 C++
【c++】类和对象(中)(构造函数、析构函数、拷贝构造、赋值重载)
本文深入探讨了C++类的默认成员函数,包括构造函数、析构函数、拷贝构造函数和赋值重载。构造函数用于对象的初始化,析构函数用于对象销毁时的资源清理,拷贝构造函数用于对象的拷贝,赋值重载用于已存在对象的赋值。文章详细介绍了每个函数的特点、使用方法及注意事项,并提供了代码示例。这些默认成员函数确保了资源的正确管理和对象状态的维护。
13 4
下一篇
无影云桌面