VSCode配置C++开发环境

2023-05-16

更新细节——2020.7.3

更新细节及排版——2022.6.9

昨天从下午一直研究到晚上十一点,查阅了很多博客资料,还是没配置好VSCode的C++开发环境,今天早上又弄了一下,现在OK了。

目录

  • 前言
  • 安装VSCode
  • 安装MinGW
  • 配置MinGW环境变量。
  • 安装拓展
  • 搭建环境

前言

虽然很多东西的原理不懂,但是现在知道这样就行了,以后用多了应该会慢慢熟悉。

安装VSCode

先去官网下载VSCode。安装在自己想要的位置即可。

VSCode官网传送门

下载速度慢可以使用镜像:VSCode镜像传送门

安装MinGW

去官网下载MinGW。安装在自己想要的位置即可。
MinGW官网传送门

进入网站后不要点击 "Download Lasted Version",往下滑,找到最新版"x86_64-posix-seh"下载。

配置MinGW环境变量。

  1. 复制MinGW路径(详见第6点)

  2. 打开控制面板、搜索高级系统设置并进入。
    在这里插入图片描述

  3. 点击环境变量。
    在这里插入图片描述

  4. 双击Path。
    在这里插入图片描述

  5. 点击新建。
    在这里插入图片描述

  6. 粘贴MinGW地址(bin中要有g++.exe)
    在这里插入图片描述

  7. 将刚才打开的所有窗口单机确定逐个退出。

到现在MinGW环境就算是配置好了,接下来可以验证一下是否配置成功:(如果失败的话,说明前面步骤有误,再试一次)

  • 按下win+r,出现运行窗口,输入cmd
    在这里插入图片描述

  • 输入g++,回车,会有两种反馈

  1. 第一种:环境配置成功

在这里插入图片描述

  1. 第二种:环境配置失败

提示: 'g++' 不是内部或外部命令,也不是可运行的程序或批处理文件。

安装拓展

VSCode最强大的功能就是拓展插件丰富。

打开vscode,点击扩展,先下载一个中文包。
在这里插入图片描述
继续在扩展里边搜索C/C++插件并下载在这里插入图片描述

搭建环境

第六步,在你想要的位置新建一个code_test文件夹。然后打开vscode,打开这个文件夹在这里插入图片描述
code_test文件夹中新建一个test.cpp文件
在这里插入图片描述
test.cpp文件中输入一份简易的测试代码:

#include <stdio.h>
#include <windows.h>
int main()
{
    printf("Hello VScode!\nHello C++\n");
    system("pause");
    return 0;
}

在这里插入图片描述
按下ctrl+F5,选择C++(GDB/LLDB),再选择g++.exe
在这里插入图片描述
在这里插入图片描述
完成上述操作后,会出现launch.json文件,粘贴上下面的代码:

(除了"miDebuggerPath"需要改成你自己对应的MinGW的路径,其他不用改)

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "g++.exe - 生成和调试活动文件",
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "miDebuggerPath": ".......\\mingw64\\bin\\gdb.exe",
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "g++"
        }
    ]
}

回到test.cpp文件,按下ctrl+F5,应该会出现下图,点击配置任务,

在这里插入图片描述
自动生成tasks.json文件后,粘贴下面代码:

{
    "version": "2.0.0",
    "command": "g++",
    "type": "shell",
    "presentation": {
      "echo": true,
      "reveal": "always",
      "focus": false,
      "panel": "shared",
      "showReuseMessage": true,
      "clear": false
    },
    "args": ["-g", "${file}", "-o", "${fileDirname}\\${fileBasenameNoExtension}.exe"],
    "problemMatcher": {
      "owner": "cpp",
      "fileLocation": ["relative", "${workspaceRoot}"],
      "pattern": {
        "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
        "file": 1,
        "line": 2,
        "column": 3,
        "severity": 4,
        "message": 5
      }
    }
  }

也可以手动新建launch.jsontask.json文件并粘贴内容,效果一样。

这时,我们返回到test.cpp文件,按下ctrl+F5,应该就可以正常编译运行了。
在这里插入图片描述

建议下载一个IORUN扩展,使用良好。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

VSCode配置C++开发环境 的相关文章

  • Java学习记录 (一)

    使用 BufferedReader 按行读入文档内容 InputStream input file span class token operator 61 span null span class token punctuation sp
  • cmake学习5:如何将自己的库作为第三方库给别人使用

    前言 自己在使用cmake进行编译工程的时候不太了解cmake的基本使用方法 有时候出现找不到第三方库的问题也不知如何排查 因此相对cmake有个稍微系统的认识 希望能用这个强大的工具来更好的为自己的工程服务 因此总结为了几篇博客 主要参考
  • C++头文件包含顺序

    Google C 43 43 编程风格指南 对于头文件的包含顺序是这样的 xff1a Names and Order of Includes link Use standard order for readability and to av
  • VLC Web插件踩坑记录

    VLC Web插件 问题描述 近期由于工作项目组人员变动 xff0c 来到新的项目组 xff0c Leader约谈前期也不安排过多任务 xff0c 但是有一个项目中现有的问题需要解决 项目中视频在线播放功能需要支持在线播放 avi媒体格式
  • cmake添加第三方库

    主要方法 将包含目录添加到构建中 span class token function include directories span span class token punctuation span D span class token
  • UART+DMA数据传输

    DMA的概念 DMA xff08 Direct Memory Access xff09 即直接内存访问 xff0c DMA传输方式无需CPU直接控制传输 xff0c 通过硬件为RAM I O设备开辟一条直接传输数据的通路 xff0c 能使C
  • asp.net core 3.1 应用部署到国产服务器 centos7 自动启动

    首先安装依赖 xff1a 注册 Microsoft 密钥 注册产品存储库 安装必需的依赖项 sudo rpm Uvh https packages microsoft com config centos 7 packages microso
  • Visual Studio2022 离线安装包下载

    首先去官网下载引导程序 xff1a https docs microsoft com en us visualstudio install create an offline installation of visual studio vi
  • MWC-电机、电池螺旋桨搭配

    原址 xff1a http blog sina com cn s blog 402c071e0102v2xv html 电池 电机 螺旋桨搭配 1 电机 1 电机KV值 xff1a 大KV配小桨 xff0c 小KV配大桨 KV值是每1V的电
  • linux系统发送http请求示例:

    http post示例 xff1a curl H 34 Content Type application json 34 X POST d 39 34 ChannelInfo 34 34 algoList 34 34 CarDetectio
  • 博途的多步过程控制, 寄存器寻址

    1 xff0c 实际生产中 xff0c 收到的开关信号往往是短信号 脉冲 2 Step 变化的逻辑和设备的逻辑分开 Step的变化逻辑在实际中往往是设备的反馈信号决定 xff0c 在此处用定时器信号代替 定时器的触发用Step的状态触发 x
  • 栈、堆、方法区存储的内容

    堆区 1 存储的全部是对象 xff0c 每个对象都包含一个与之对应的class的信息 class的目的是得到操作指令 2 jvm只有一个堆区 heap 被所有线程共享 xff0c 堆中不存放基本类型和对象引用 xff0c 只存放对象本身 栈
  • 【verilog】UART串口发送(FPGA)

    简述核心代码仿真测试 简述 串口发送是以一定速率发送单bit数据 xff0c 通常一组数据为10bit 空闲状态为高电平 xff0c 起始位为0 xff0c 中间以低位在前的方式发送8bit数据 xff0c 终止位为1 采用计数器 cnt
  • 栈的基础知识

    0 简介 最近在自己编写一些小的算法的时候 xff0c 深感自己的算法过于臃肿 碰巧Datawhale在新的一期组队学习中组织了数据结构与算法的课程学习 于是就参加了 xff0c 再次感谢Datawhale 首先跟大家分享一下两个自己感觉比
  • AD BOM表导出

    AD BOM表导出 在REPOERT下选择bill of materials 即进行BOM输出 输出操作网上有许多教程 xff0c 这里不进行叙述 xff0c 只提一下 xff0c 必须将Value选择打钩并上拉到展示纵队中 制作自己的模板
  • STM32 的OLED的使用

    7脚OLED依次有引脚 xff1a GND VCC D0 D1 RES DC CS七个脚 模块接口定义 xff1a 1 GND 电源地 2 VCC 电源正 xff08 3 xff5e 5 5V xff09 3 D0 OLED 的 D0 脚
  • 【转载】关于Visual Studio、VC和C++的那些事

    size 61 medium 首先 xff0c 这三个东西有什么区别呢 xff1f VC和C 43 43 是相同的吗 xff0c 有什么区别呢 xff1f 我刚开始学C 43 43 的时候也有这样的问题 xff0c 在这里我来替大家解释一下
  • Byte、bit 、和16进制之间的关系

    bit xff08 比特 xff09 byte xff08 字节 xff09 一 bit xff08 比特 xff09 计算机内存储和处理信息的最小单位是位 xff08 bit 或比特 xff09 xff0c 一个比特值可以是0或1 xff
  • ROS常见问题1——找不到包

    ROS常见问题1 找不到包 1 问题 每次打开终端会提示找不到相关包或者相关文件 比如在查看自己在catkin工作区间下创建的消息时提示找不到文件 xff1a 输入 xff1a span class hljs variable span r
  • 架空线路的基本结构及组成

    最近没有什么实时的新闻发 xff0c 所以小编就给大家整理了一些干货 准备好了吗 xff1f 具体是什么干货呢 xff1f 这句话问的好 xff0c 今天小编就给大家聊一聊电力巡检的基本知识 xff1a 架空线路的基本构成及组成 架空输电线

随机推荐

  • 微信小程序云开发,数据库数据的增加

    1 在wxml中添加一个按钮绑定事件 xff0c 添加数据 2 在云数据库中新建一个数据文件夹list 3 在JS中添加数据 4 在数据库中即可有增加的数据
  • Anaconda如何成功配置OpenCV的开发环境

    1 打开Anaconda的运行环境 xff1a 点击Anaconda Prompt运行 2 进入环境 使盘符在Anaconda 安装目录下 进入Scripts文件夹下 xff1b 3 找到相应路径位置 xff1a 4 敲代码运行到相应盘符
  • jupyter notebook快速入门使用详解及标记的使用(Markdown使用笔记)

    1 软件 xff08 终端的打开 xff09 打开软件之后 xff0c Jupyter Notebook 将在你的默认浏览器中打开 xff0c 网址为 xff1a http localhost 8888 tree 在某些情况下 xff0c
  • F3飞控的调试

    http www moz8 com thread 109506 1 1 html
  • 航模飞机设计基础知识

    部分引用源1 xff1a KSP飞机设计简易指南 http tieba baidu com p 2272016546 FAR进阶气动稳定性和控制教程 http bbs deeptimes org forum php mod 61 viewt
  • SLA技术3D打印机的原理

    SLA是Stereo lithography Appearance的缩写 xff0c 即立体光固化成型法 用特定波长与强度的激光聚焦到光固化材料表面 xff0c 使之由点到线 xff0c 由线到面顺序凝固 xff0c 完成一个层面的绘图作业
  • STM32F103C8T6读取气压计MS5611,I2C读取模式

    笔者最近想用气压计模块来测一下相对高度 xff0c 使用的元器件如下图所示 所使用的最小系统板 所使用的气压计模块 其实读取还是蛮简单的 xff0c 根据核心板引脚图选择I2c接口 xff0c 然后借鉴正点原子的模拟i2c程序 xff0c
  • keil 的头文件

    许多初学者使用网上下载的程序时都会遇到这样一个问题 xff0c 就是头文件找不到 我想就这个问题说明一下 首先 xff0c 我们用到的KEIL有几种版本的 xff0c 头文件也不同 有reg51 h和at89x51 h两种比较常见 at89
  • 关于串口的初始化Uart_Init(0, 115200)

    void Uart Init int pclk int baud int i if pclk 61 61 0 因为Main c 中定义了 GLOBAL CLK 61 1 所以 PCLK 在 option h 中定义 在Main c 中的设置
  • 【学习笔记】Ubuntu双系统+搭建个人服务器

    Ubuntu双系统 43 搭建个人服务器 前言1 Ubuntu 43 Win双系统1 1 制作U盘启动盘1 2 系统分盘1 3 安装Ubuntu系统 2 搭建个人服务器2 1 设置root2 2 配置ssh2 3 向日葵连接 3 内网穿透3
  • IMU 测量模型和运动学模型

    一 概念 高斯白噪声 测量噪声是AD转换器件引起的外部噪声 xff0c 波动激烈的测量白噪声 随机游走 这里指零偏Bias 随机游走噪声 xff0c 是传感器内部机械 温度等各种物理因素产生的传感器内部误差的综合参数 xff0c 是变化缓慢
  • java参数校验注解

    java参数校验注解 java中前后台参数传递时如何对参数进行校验 校验主要使用到 javax validation类 一 引入依赖 SpringBoot的web组件中已引入validation的jar包 xff0c 但也可自行引入 spa
  • SpringBoot集成阿里easyexcel(三)CellWriteHandler图片转换

    继承单元格处理器 xff0c 通过重写不同方法 xff0c 对单元格进行处理 span class token keyword public span span class token keyword class span span cla
  • 使用Mybatis-plus拦截加密数据

    使用Mybatis plus拦截加密数据 使用自定义注解来标识需要加密的po和字段 xff0c 并通过mybaitsplus的插件工具类Interceptor类来实现对数据的拦截与加密转换操作 一 自定义加密注解 作用在类上的注解 pack
  • SpringBoot集成阿里easyexcel(四)Converter导入导出数据转换器

    SpringBoot集成阿里easyexcel xff08 四 xff09 Converter导入导出数据转换器 通过com alibaba excel converters Converter转换器实现Excel导入导出时Java数据与E
  • SpringBoot集成Ehcache缓存

    SpringBoot集成Ehcache缓存 Ehcache有两种缓存方式 xff0c 分别是堆内存 磁盘 xff08 非堆内存 xff09 一 堆内存缓存 也就是MemoryStore xff0c 速度最快 xff0c 不适合存放大量数据
  • Spring的切面编程(AOP)概念与使用AOP实现日志记录

    Spring的切面编程 xff08 AOP xff09 概念与使用 一 面向切面编程 定义 面向切面编程 xff08 AOP xff09 是通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术 作用 xff1a 利用AOP对业务
  • 关于intrins.h头文件的介绍

    在单片机中应用最多的当然就是移位函数 xff0c 利用移位函数可以更简便的实现流水灯等效果 移位函数 移位函数名 左移 span class token function crol span span class token punctua
  • 大批量数据分批批量插入或更新(Mybatis+MySQL)

    大批量数据分批批量插入或更新 在MySQL数据库的前提下 xff0c 插入或更新大批量数据 首先批量插入需要考虑到以下几个因素 xff1a 数据库一次可以承受多大或者多少条数据的插入批量插入是否会占用Mysql资源太久 xff0c 影响系统
  • VSCode配置C++开发环境

    更新细节 2020 7 3 更新细节及排版 2022 6 9 昨天从下午一直研究到晚上十一点 xff0c 查阅了很多博客资料 xff0c 还是没配置好VSCode的C 43 43 开发环境 xff0c 今天早上又弄了一下 xff0c 现在O