VSCode 搭建C++编程环境 2025新版图文安装教程(100%搭建成功,VSCode安装+C++环境搭建+运行测试+背景图设置)
名人说:博观而约取,厚积而薄发。——苏轼《稼说送张琥》
创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊)目录
- 一、VScode下载及安装
- 二、安装 MinGW-w64 工具链
- 三、Windows环境变量配置
- 四、检查 MinGW 安装
- 四、VSCode配置C++环境
- 五、运行测试
- 六、背景图设置
很高兴你打开了这篇博客,更多好用的软件工具,请关注我、订阅专栏《实用软件与高效工具》,内容持续更新中…
思维速览:

一、VScode下载及安装
1.点击蓝色链接---->VSCode官网,进入之后是这个界面。

2.点击"下载Windows版本"进入下载页面

3.下载好后,放到桌面,双击点开

4.双击点开后,如图所示,点击右下角"下一步"

选择 “安装路径”,继续下一步

5.之后进入如下界面,勾选如图,勾选好之后点击右下角"下一步"

6.紧接着点击 “安装”

7.安装完毕后,点击"完成"

8.安装完毕,如图:

安装到这里基本就完成了,继续往下看,进行环境配置操作。
二、安装 MinGW-w64 工具链
1.通过MSYS2 https://www.msys2.org/ 获取最新版本的 MinGW-w64 。
🌟注释:它提供了最新的 GCC、MinGW-w64 本机版本以及其他有用的 C++ 工具和库。

2.打开MSYS2官网,找到页面中下方 ,点击蓝色链接“Download the installer: msys2-x86_64-20250221.exe”进行下载。

文件大小约 81.98 MB

3.找到下载好的文件,双击运行安装,进入安装步骤
出现以下界面后,点击“Next”

接着,由于这个文件不大,对C盘挤占程度较小,因此默认安装位置,继续下一步Next

⚠️路径需要记一下,后面要用
继续 “Next”

等待安装ing:

勾选✅完成,然后点“Finish”

4.安装完成后,运行界面如图

复制下面的语句,粘贴到命令行里按 回车↩︎ 运行。
pacman -S --needed base-devel mingw-w64-ucrt-x86_64-toolchain
会弹出如下的界面:

此时,我们只需要再继续按 回车↩︎ 运行,它会给我们一个选项,是否选择安装,是的话就是Y,否的话就是n。

我们输入“Y”后,继续按 回车↩︎ 运行

之后开始进入安装等待

安装完毕后,关闭窗口:

接下来 我们需要做的是在 Windows 环境变量"Path"中添加 mgw
三、Windows环境变量配置
本部分步骤的目的是:将 MinGW-w64 文件夹的路径添加bin到 Windows环境变量"PATH"中。
1.在 Windows 搜索栏中,键入“环境变量”
如果找不到,可以用快捷键 Win + Q 快速调出


2.打开后,点击右下角“环境变量”

3.用户变量中,选择Path变量,然后选择编辑。

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

5.选择“确定”,然后在“环境变量”窗口中再次选择“确定”以更新环境变量。


四、检查 MinGW 安装
1.同样的我们 “Win + Q” 调出搜索🔍,打开CMD


2.要检查 MinGW-w64 是否正确安装并可用,我们分别在cmd里逐一输入这三个命令查看
gcc --version
g++ --version
gdb --version
1️⃣gcc --version
如下图所见,我们已经成功安装了编译器:

2️⃣g++ --version

3️⃣gdb --version

看到这里,出现以下界面,说明 MinGW-w64 工具已正确安装并可用

四、VSCode配置C++环境
1.进入安装好的VSCode,会出现这样的界面

我们接下来需要安装一个插件/拓展,来完成VSCode C++环境的搭建。
2.之后我们找到左侧“拓展”logo,点开它,搜索“C/C++ extension pack”,并点击“Install”进行安装。


安装这个插件将为你提供在 visual studio 代码中编写 c++ 代码所需的所有工具。
3.安装完成后,我们到桌面创建一个文件夹📂cpp_project,这个将成为你存放c++文件的位置。

4.我们用VSCode打开它,可以看到这个目录,然后了解一下基础
- 左侧:代表是创建文件
- 右侧:创建文件夹

实践出真知,接下来咱们举一个简单的例子,来一起测试一下搭建的C++环境,并完成最后的环境搭建。
五、运行测试
1.接着我们点击左侧的创建文件,创建一个test.c++文件,进行测试,在右边框栏里进行编程。


/*
创作者:Code_流苏(CSDN)
文件名:test.cpp
*/
#include <iostream>
using namespace std;int main() {cout << "Hello World!" << endl;return 0;
}
(以:输出Hello,World!为例)

3.接着我们点击右上角的运行按钮 ▷,即可运行

页面正上方会弹出一个选择,此时我们选择 “C/C++:g++.exe…”

此时千万不要着急,它会自动加载一段时间,期间它自动会生成:
- 编译配置(tasks.json)
- 调试配置(launch.json)
然后不用动,等到它运行完成,出现下面的界面。
此时下方弹出debug部分有报出黄色提示的部分,🌟这一部分不用管,不影响正常使用(切勿钻牛角尖,我使用了两年无影响)。

此时,我们切换到“TERMINAL”(终端),可以看到,运行成功,说明环境已经搭建完毕且成功,恭喜🎉:

看到这里,如果不需要设置背景图,就结束了,若需要设置,请继续往下看。
六、背景图设置
1.首先打开拓展,搜索“background-cover”,之后点击进行“Install”安装。

2.安装完成后,在页面右下角可以找到一个带图片的Logo,我们点击它


点击 “选择一张背景图”

再次点击 “选择一张背景图”

找到背景图文件夹下的图片, 选择该背景图文件夹下的图片:

之后,回到VSCode,选择"YES",使背景图生效。

效果如图:

3.到这里之后,我们会发现有的时候,背景图太亮可能会影响观感,因此我们补充一下如何调节透明度:
还是老地方,找到右下角,点击Logo,然后选择 “更新图片不透明度”

然后看到,当前不透明度是0.2,意思就是目前背景图像透明度是80%,是背景图相对比较暗的情况。(如果大家有不理解相关概念的,请看下方注解)
透明度和不透明度:
不透明度 = 100% - 透明度
—
1️⃣透明度:图像的透明程度,值越低,图像越透明。
2️⃣不透明度:图像的遮挡程度,值越高,图像越不透明。

根据你的个人观感设置图片不透明度:
- 如果你感觉当前图片太暗了,那么我们可以给它调整为0.8试试

放一张对比图,我们可以明显看出,不透明度为80%时,透明度为20%,是背景图相对比较亮的情况。

- 如果你感觉当前图片太亮了,那么我们可以给它调整为0.1看一下

放一张对比图,我们可以明显看出,不透明度为10%时,透明度为90%,是背景图相对比较暗的情况。

到这里安装配置就都结束了,记得点赞分享支持一下,感谢支持!
请尊重原创作品,谢绝转载,谢谢!
创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊)
相关文章:
VSCode 搭建C++编程环境 2025新版图文安装教程(100%搭建成功,VSCode安装+C++环境搭建+运行测试+背景图设置)
名人说:博观而约取,厚积而薄发。——苏轼《稼说送张琥》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 目录 一、VScode下载及安装二、安装 MinGW-w64 工具链三、Windows环境变量配置四、检查 M…...
Ubuntu24.04 LTS 版本 Linux 系统在线和离线安装 Docker 和 Docker compose
一、更换软件源并更新系统 在 Ubuntu 24.04 LTS 中,系统引入了全新的软件源配置格式。现在的源配置文件内容更加结构化且清晰,主要包含了软件类型 (Types)、源地址 (URIs)、版本代号 (Suites) 以及组件 (Components) 等信息。 # cat /etc/apt/sources.li…...
从 pip 到 Poetry:开启高效 Python 包管理新时代
目录 从 pip 到 Poetry:开启高效 Python 包管理新时代 一、pip 与 Poetry 的基本区别 二、Poetry 相对于 pip 的优势 1. 依赖管理与版本锁定 2. 内置虚拟环境管理 3. 统一的项目管理流程 4. 精细的依赖解析器 5. 更友好的 CLI 工具 三、如何快速上手 Poetry…...
MTK Android12 最近历史任务 最左侧的清除历史任务改到页面底部
Android最近历史任务页面 -清除所有- 功能按钮放到底部 文章目录 需求需求原因 修改的核心文件实现方案最近历史任务基本UI结构了解代码实现思路实现方案RecentsViewTaskOverlayFactory在overview_actions_containerOverviewActionsView 实际效果 总结 需求 最近历史任务重&am…...
TCP协议支持全双工原因TCP发送接收数据是生产者消费者模型
一、TCP支持全双工的原因 TCP协议支持全双工,即使用TCP协议进行通信时,服务端和客户端可以同时进行数据的发送和接收,互不干扰,实现同时双向传输数据。 这是因为使用TCP协议通信时,读写套接字的文件描述符既用来发送…...
文件操作2
7. ⽂件读取结束的判定 7.1 被错误使用的 feof 牢记:在文件读取过程中,不能用 feof 函数的返回值直接来判断文件的是否结束。 feof 的作用是:当文件读取结束的时候,判断读取结束的原因是否是:遇到文件尾结束。 1. …...
linux中yum和wget指令的区别
yum 和 wget 都是 Linux 上的下载工具,但它们的用途、下载方式和适用场景不同。以下是它们的 主要区别: 1. yum 是软件包管理器,wget 是文件下载工具 功能yumwget用途安装、更新和管理 RPM 软件包从 HTTP/HTTPS/FTP 下载文件工作方式通过 yu…...
《又是二叉树?递归与回溯的经典应用》
“ 我喜欢晴天,你恰好是最好的太阳” 226.翻转二叉树 力扣题目链接(opens new window) 翻转一棵二叉树。 这道题我们可以通过递归法解决,我们只要递归的把每一个节点的左右孩子反转一下就能解决了。 代码如下: var invertTree function(ro…...
Qt/C++音视频开发82-系统音量值获取和设置/音量大小/静音
一、前言 在音视频开发中,音量的控制分两块,一个是控制播放器本身的音量,绝大部分场景都是需要控制这个,这个不会影响系统音量的设置。还有一种场景是需要控制系统的音量,因为播放器本身的音量是在系统音量的基础上控…...
从零到精通文本指令:打造个人AI助理的完整指令库(Prompt 指令实操)
文章目录 从零到精通文本指令:打造个人AI助理的完整指令库(Prompt 指令实操)创作指令创作指令**润色指令****扩写指令** 问答指令直接问答材料问答时间逻辑问答 总结、摘要、翻译指令总结信息抽取翻译 从零到精通文本指令:打造个人AI助理的完整指令库(Pr…...
C# NX二次开发:获取模型中所有的草图并获取草图中的对象
大家好,今天接着讲NX二次开发获取草图相关。 获取草图的方法是从workPart中获取,如下面的例子所示: List<Tag> tags new List<Tag>(); SketchCollection sketchCollection workPart.Sketches; …...
基于SpringBoot和MybatisPlus实现通用Controller
基于SpringBoot和MybatisPlus实现通用Controller,只需要创建实体类和mapper接口,单表增删改查接口就已经实现,提升开发效率 1.定义通用controller package com.xian.controller;import cn.hutool.core.map.MapUtil; import com.baomidou.my…...
锤头线和倒锤头线
1、锤头线 是指一根没有上影线或上影线很短,而下影线很长,实体却很小的K线。其K线实体可以是阴线或是阳线,类似于T字。 锤头线的特征有以下三点: 实体很小,下影线长度大于或等于实体的两倍。下影线越长时,如股价处于低位,则上涨的可能性越大。 如股价处于高位,则下跌…...
蓝桥杯嵌入式组第十二届省赛题目解析+STM32G431RBT6实现源码
文章目录 1.题目解析1.1 分而治之,藕断丝连1.2 模块化思维导图1.3 模块解析1.3.1 KEY模块1.3.2 LED模块1.3.3 LCD模块1.3.4 TIM模块1.3.5 UART模块1.3.5.1 uart数据解析 2.源码3.第十二届题目 前言:STM32G431RBT6实现嵌入式组第十二届题目解析源码&#…...
STM32上实现简化版的AUTOSAR DEM模块
文章目录 摘要摘要 在一些可以不使用AUTOSAR的项目中,往往也有故障检测和DTC存储的需求,开发一套类似于AUTOSAR DEM模块的软件代码,能够满足DTC的检出和存储,使用FalshDB代替Nvm模块,轻松构建持久化存储,如果你也有这样的需求,请阅读本篇,希望能够帮到你。 /*********…...
如何用终端运行一个SpringBoot项目
在项目开发阶段,为了能够快速测试一个SpringBoot项目的执行结果,就可以采用终端(黑窗)运行查看,因为我们不能要求每一个客户都安装idea并且适配我们的项目版本。 下面将展示打包运行这两个方面的过程: 创建…...
多线程与并发编程 面试专题
多线程与并发编程 面试专题 线程的基础概念基础概念线程的创建线程的状态线程的终止方式start 与 run 区别线程的常用方法 锁锁的分类深入synchronized深入ReentrantLock死锁问题 阻塞队列线程池 线程的基础概念 基础概念 进程与线程 进程:指运行中的程序。 比如我…...
米尔电子-LR3568-烧录鸿蒙
最近开始搞鸿蒙,用的是米尔的LR3568。 开贴记录。 首先要在LR3568上烧录鸿蒙 一、安装准备 1.从米尔电子上下载资料 网址:米尔开发者中心 注册完成后,进入页面,选择我的产品,添加PN和SN PN和SN可以在包装盒上找到 添加到这里…...
Redis Sentinel 及 Redisson 连接问题全解析
在 Kubernetes (k8s) 环境下使用 Redis Sentinel 进行高可用部署时,可能会遇到 failover 超时、Sentinel 误判、Spring Boot 连接失败 以及 Redisson 配置错误等问题。本文将对这些问题进行汇总分析,并提供详细的解决方案。 1️⃣ Redis Sentinel 介绍 …...
基于Flink SQL的实时指标多维分析模型
数据流程介绍 1.创建源表kafka接入消息队列数据,定义字段映射规则; 2.创建目标表es_sink配置Elasticsearch输出; 3.通过多级视图(tmp→tmp_dedup→tmp1/tmp2→tmp3→tmp_groupby)实现数据清洗、去重、状态计算&#x…...
算法刷题整理合集(一)
算法刷题整理合集(一) 本篇博客旨在记录自已的算法刷题练习成长,里面注有详细的代码注释以及和个人的思路想法,希望可以给同道之人些许帮助。本人也是算法小白,水平有限,如果文章中有什么错误或遗漏之处&am…...
C++ STL—— String库
在C编程中,字符串操作是几乎每个项目都会涉及的基础功能。C标准模板库(STL)中的string类为我们提供了强大而灵活的工具,使得字符串的处理变得简单高效。无论是字符串的创建、修改、查找,还是复杂的文本处理,…...
【从零开始学习计算机科学】数据库系统(二)关系数据库 与 关系代数
【从零开始学习计算机科学】数据库系统(二)关系数据库 与 关系代数 关系数据库结构化查询语言SQL数据定义语言(DDL)数据查询语言(Data Query Language, DQL)数据操纵语言(Data Manipulation Language, DML)数据控制语言(Data Control Language, DCL)关系型数据库的优…...
DoS攻击防范
一、网络架构优化 使用CDN或反向代理 通过内容分发网络(CDN)或反向代理(如Nginx)分散流量,将请求分发到多个服务器节点,减轻单点压力,同时过滤异常请求。 负载均衡技术 部署负载均衡设备&#…...
Linux驱动开发实战(四):设备树点RGB灯
Linux驱动开发实战(四):设备树点RGB灯 文章目录 Linux驱动开发实战(四):设备树点RGB灯前言一、驱动实现1.1 驱动设计思路1.2 关键数据结构1.3 字符设备操作函数1.4 平台驱动探测函数1.5 匹配表和平台驱动结…...
vue中,watch里,this为undefined的两种解决办法
提示:vue中,watch里,this为undefined的两种解决办法 文章目录 [TOC](文章目录) 前言一、问题二、方法1——使用function函数代替箭头函数()>{}三、方法2——使用that总结 前言 尽量使用方法1——使用function函数代替箭头函数()…...
设计模式C++
针对一些经典的常见的场景, 给定了一些对应的解决方案,这个就叫设计模式。 设计模式的作用:使代码的可重用性高,可读性强,灵活性好,可维护性强。 设计原则: 单一职责原则:一个类只做一方面的…...
前端构建工具进化论:从Grunt到Turbopack的十年征程
前端构建工具进化论:从Grunt到Turbopack的十年征程 一、石器时代:任务自动化工具(2012-2014) 1.1 Grunt:首个主流构建工具 // Gruntfile.js 典型配置 module.exports function(grunt) {grunt.initConfig({concat: {…...
设备预测性维护:企业降本增效的关键密码
在当今竞争激烈的商业战场中,企业犹如一艘在波涛汹涌大海上航行的巨轮,要想乘风破浪、稳步前行,降本增效便是那至关重要的 “船锚”,帮助企业在复杂的市场环境中站稳脚跟。而设备预测性维护,正是开启企业降本增效大门的…...
css基本功
为什么 ::first-letter 是伪元素? ::first-letter 的作用是选择并样式化元素的第一个字母,它创建了一个虚拟的元素来包裹这个字母,因此属于伪元素。 grid布局 案例一 <!DOCTYPE html> <html lang"zh-CN"><head&…...
