VSCode 配置 C 语言编程环境
目录
一、下载 mingw64
二、配置环境变量
三、三个配置文件
四、格式化代码
1、安装插件
2、保存时自动格式化
3、左 { 不换行
上了两年大学,都还没花心思去搭建 C 语言编程环境,惭愧,惭愧。
一、下载 mingw64
mingw64 是著名的 C/C++ 编译器 GCC 的 Windows 版本。
下载地址:MinGW-w64 - for 32 and 64 bit Windows download | SourceForge.net
① 进入网页后选择 Files 选项卡

② 往下划,找到最新版本的 mingw64,下载如下版本

③ 解压压缩包得到 mingw64 文件夹

mingw64 应该是一款绿色软件,安装和卸载的方法:下载文件夹和删除文件夹。
二、配置环境变量
① 右击 “此电脑”,选择 “属性”(如果你没有 “此电脑” 图标,那就去资源管理器找)

② 高级系统设置 << 环境变量...(在右下角)<< Path(双击或选中后点击 “编辑” 打开)

③ 新建环境变量,填入你的 mingw64 文件夹下 bin 目录的路径(不要照着写!)

④ 打开 cmd,输入以下指令,测试环境变量是否生效
gcc -v
如下图所示,测试成功:

如果出现类似 “不认识 gcc” 的报错,那么可能是路径写错了或者需要重启一下电脑?
三、三个配置文件
在你放代码文件夹下创建一个名为 “.vscode” 的文件夹,并在其中创建三个文件:
- c_cpp_properties.json
- launch.json
- tasks.json
c_cpp_properties.json
注意:把所有的 C:/Program Files/MinGW 换成你的 mingw64 所在目录的路径!
{"configurations": [{"name": "Win32","includePath": ["${workspaceRoot}","C:/Program Files/MinGW/mingw64/include/**","C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++","C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32","C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward","C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include","C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed","C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/include"],"defines": ["_DEBUG","UNICODE","__GNUC__=6","__cdecl=__attribute__((__cdecl__))"],"intelliSenseMode": "msvc-x64","browse": {"limitSymbolsToIncludedHeaders": true,"databaseFilename": "","path": ["${workspaceRoot}","C:/Program Files/MinGW/mingw64/include/**","C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++","C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32","C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward","C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include","C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed","C:/Program Files/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/include"]}}],"version": 4
}
launch.json
{"version": "0.2.0","configurations": [{"name": "(Windows) Launch","type": "cppvsdbg","request": "launch","program": "cmd","preLaunchTask": "echo","args": ["/C","${fileDirname}\\${fileBasenameNoExtension}.exe","&","echo.","&","pause"],"stopAtEntry": false,"cwd": "${workspaceFolder}","environment": []},{"name": "(gdb) Launch","type": "cppdbg","request": "launch","program": "${workspaceFolder}/${fileBasenameNoExtension}.exe","args": [],"stopAtEntry": false,"cwd": "${workspaceFolder}","environment": [],"externalConsole": true,"MIMode": "gdb","miDebuggerPath": "C:\\Program Files\\MinGW\\mingw64\\bin\\gdb.exe", // 自己电脑的gdb"preLaunchTask": "echo", //这里和task.json的label相对应"setupCommands": [{"description": "Enable pretty-printing for gdb","text": "-enable-pretty-printing","ignoreFailures": true}]}]
}
tasks.json
{// See https://go.microsoft.com/fwlink/?LinkId=733558// for the documentation about the tasks.json format"version": "2.0.0","tasks": [{"label": "echo","type": "shell","command": "gcc","args": ["-g","${file}","-o","${fileBasenameNoExtension}.exe","-fexec-charset=GBK" // 解决中文乱码]}],"presentation": {"echo": true,"reveal": "always","focus": false,"panel": "new","showReuseMessage": true,"clear": false}
}
四、格式化代码
1、安装插件

2、保存时自动格式化
- 依次点击 VSCode 左下角齿轮 << 设置,然后输入:Format On Save
- 勾选

3、左 { 不换行
- 依次点击 VSCode 左下角齿轮 << 设置,然后输入:C_Cpp: Clang_format_style
- 将默认的 file 改为:{BasedOnStyle: Chromium, IndentWidth: 4}

参考博客:
VSCode配置C语言环境_vscode c语言提示_青衫与白杉的博客-CSDN博客
VSCode 格式化 cpp 文件时配置左大括号不换行_vscode大括号不换行_云胡同学的博客-CSDN博客
相关文章:
VSCode 配置 C 语言编程环境
目录 一、下载 mingw64 二、配置环境变量 三、三个配置文件 四、格式化代码 1、安装插件 2、保存时自动格式化 3、左 { 不换行 上了两年大学,都还没花心思去搭建 C 语言编程环境,惭愧,惭愧。 一、下载 mingw64 mingw64 是著名的 C/C…...
LeetCode 热题 100——找到字符串中所有字母异位词(滑动窗口)
题目链接 力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 题目解析 该题目的意思简而言之就是说,从s字符串中寻找与p字符串含有相同字符(次数和种类均相同)的子串,并且将他们的首字符下标集合进数组中进行返回。 滑动窗口解…...
uniapp从零到一的学习商城实战
涵盖的功能: 安装开发工具HBuilder:HBuilderX-高效极客技巧 创建项目步骤: 1.右键-项目: 2.选择vue2和默认模板: 3.完整的项目目录: 微信开发者工具调试: 1.安装微信开发者工具 2.打开…...
应广单片机实现跑马灯
应广单片机处处体现其mini的特性,非常适合做各种方案开发,特别是点灯,什么跑马灯,氛围灯,遥控灯,感应灯,拍拍灯等,用应广都OK。 跑马灯是基础中的基础,我搭了一个框架&am…...
关于el-input和el-select宽度不一致问题解决
1. 情景一 单列布局 对于上图这种情况,只需要给el-select加上style"width: 100%"即可,如下: <el-select v-model"fjForm.region" placeholder"请选择阀门类型" style"width: 100%"><el-o…...
【Unity3D赛车游戏优化篇】【八】汽车实现镜头的流畅跟随,以及不同角度的切换
👨💻个人主页:元宇宙-秩沅 👨💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨💻 本文由 秩沅 原创 👨💻 收录于专栏:Uni…...
VScode连接远程JupyterNotebook显示点云ply文件
1. remote ssh的配置文件config中添加 Host Jupyter-ServerHostName <IP>ForwardX11 yesForwardX11Trusted yesForwardAgent yesUser <Username> 2. 在远程服务器的.sshd_config中把X11forward的开关打开为yes 3. 在home文件夹中更改.bashrc,加入以下…...
python安装wind10
一、下载: 官网:Python Releases for Windows | Python.org 二、安装 双击下载的安装程序文件。这将打开安装向导。安装界面图下方两个框的" Use admin privileges wheninstalling py. exe和” Add python. exe to PATH"都要勾选,一定要勾选!一定要勾选…...
uni-app 中 swiper 轮播图高度自适应
方法一 1、首先 swiper 标签的宽度是 width: 100% 2、swiper 标签存在默认高度是 height: 150px ;高度无法实现由内容撑开,在默认情况下,图片的高度显示总是 150px swiper 宽度 / swiper 高度 原图宽度 / 原图高度 swiper 高度 swiper …...
开源风雷CFD软件多物理场耦合接口开发路线分享!!!
本文将基于开发过程中积累的经验,介绍风雷如何基于preCICE开发适配器。 preCICE是一个开源的多物理场数值模拟耦合库,可以用于多个求解器联合求解一个复杂的多场问题,支持在大规模并行系统上应用,具有良好的并行效率。并且可以对…...
浅谈Mysql读写分离的坑以及应对的方案 | 京东云技术团队
一、主从架构 为什么我们要进行读写分离?个人觉得还是业务发展到一定的规模,驱动技术架构的改革,读写分离可以减轻单台服务器的压力,将读请求和写请求分流到不同的服务器,分摊单台服务的负载,提高可用性&a…...
最近在对接电商供应链,说说开放平台API接口
B2B电商开放平台的设计需要从以下几面去思考: 开放平台API接口的设计,主要是从功能需求的角度,设计满足业务需求的接口及对应的字段; 平台与商家之间信息的对接,对接的方法有哪些?对接过程中需要可能会遇到…...
【FusionInsight 迁移】HBase从C50迁移到6.5.1(02)C50上准备FTP Server
【FusionInsight 迁移】HBase从C50迁移到6.5.1(02)C50上准备FTP Server HBase从C50迁移到6.5.1(02)C50上准备FTP Server登录老集群FusionInsight C50的Manager准备FTP User准备FTP Server HBase从C50迁移到6.5.1(02&am…...
Java操作符学习笔记
1、布尔类型的逻辑操作符和按位操作符 & 和 &&、|| 和 | 其实是两种操作符。在使用逻辑判断时,有时不希望产生短路作用,会对两个布尔类型值使用单个的 & 或 |运算。这让我一直将单个 & 和 | 当成时逻辑操作符的一种,而事…...
【STM32】学习笔记-PWR(Power Control)电源控制
PWR(Power Control)电源控制 PWR(Power Control)电源控制是一种技术或设备,用于控制电源的开关和输出。它通常用于电源管理和节能,可以通过控制电源的工作状态来延长电子设备的使用寿命,减少能…...
安卓 MeasureCache优化了什么?
安卓绘制原理概览_油炸板蓝根的博客-CSDN博客 搜了一下,全网居然没有人提过 measureCache。 在前文中提到过,measure的时候,如果命中了 measureCache,会跳过 onMeasure,同时会设置 PFLAG3_MEASURE_NEEDED_BEFORE_LAYOU…...
docker save docker export 区别
docker save用于导出镜像到文件,包含镜像元数据和历史信息;docker export用于将当前容器状态导出至文件,类似快照,所以不包含元数据及历史信息,体积更小,此外从容器快照导入时也可以重新指定标签和元数据信…...
音频基础知识
文章目录 前言一、音频基本概念1、音频的基本概念①、声音的三要素②、音量与音调③、几个基本概念④、奈奎斯特采样定律 2、数字音频①、采样②、量化③、编码④、其他相关概念<1>、采样位数<2>、通道数<3>、音频帧<4>、比特率(码率&#…...
TensorFlow(R与Python系列第四篇)
目录 一、TensorFlow介绍 二、张量 三、有用的TensorFlow运算符 四、reduce系列函数实现约减 1-第一种理解方式:引入轴概念后直观可理 2-第二种理解方式:按张量括号层次的方式 参考: 一、TensorFlow介绍 TensorFlow是一个强大的用于数…...
华为数通方向HCIP-DataCom H12-821题库(单选题:261-280)
第261题 以下关于IPv6过渡技术的描述,正确的是哪些项? A、转换技术的原理是将IPv6的头部改写成IPv4的头部,或者将IPv4的头部改写成IPv6的头部 B、使用隧道技术,能够将IPv4封装在IPv6隧道中实现互通,但是隧道的端点需要支持双栈技术 C、转换技术适用于纯IPv4网络与纯IPv…...
前端调试必备:Chrome控制台Network选项卡的10个实用技巧
前端调试进阶:Chrome控制台Network选项卡的深度实战指南 当你面对一个加载缓慢的页面或是莫名其妙的API请求失败时,是否曾感到无从下手?作为前端开发者,我们每天都要与各种网络请求打交道,而Chrome开发者工具的Network…...
如何快速上手VNote:跨平台Markdown笔记软件的完整指南
如何快速上手VNote:跨平台Markdown笔记软件的完整指南 【免费下载链接】vnote A pleasant note-taking platform. 项目地址: https://gitcode.com/gh_mirrors/vn/vnote VNote是一款基于Qt开发的免费开源Markdown笔记应用,专为追求高效编辑体验的用…...
简单几步,让AI帮你画瑜伽女孩:雯雯的后宫-造相Z-Image-瑜伽女孩模型使用教程
简单几步,让AI帮你画瑜伽女孩:雯雯的后宫-造相Z-Image-瑜伽女孩模型使用教程 1. 模型介绍:你的专属AI瑜伽画师 想象一下,你只需要用文字描述,就能让AI为你创作出专业级的瑜伽女孩图片。这就是"雯雯的后宫-造相Z…...
别再手动改配置了!用Docker Compose一键部署带Web管理界面的Pulsar独立集群
告别手动配置:Docker Compose全自动部署Pulsar集群与Web管理平台 每次搭建开发环境都要重复输入十几条Docker命令?配置文件散落在各个角落难以维护?今天我要分享的这套方案,将彻底改变你部署消息队列的方式。只需一个YAML文件&…...
HunyuanVideo-Foley与Java后端集成:构建高并发音效生成服务
HunyuanVideo-Foley与Java后端集成:构建高并发音效生成服务 1. 场景需求与技术挑战 在线教育平台面临一个共同痛点:海量视频课程需要配乐,但人工配乐成本高、效率低。一个中等规模的平台每月新增课程可能达到上万节,传统音乐制作…...
MogFace人脸检测模型-WebUI详细步骤:如何通过service_ctl.sh管理服务生命周期
MogFace人脸检测模型-WebUI详细步骤:如何通过service_ctl.sh管理服务生命周期 1. 服务管理工具介绍 MogFace人脸检测服务提供了一个强大的管理工具service_ctl.sh,这个脚本让你能够轻松控制服务的整个生命周期。无论你是需要启动、停止、重启服务&…...
RWKV7-1.5B-g1a开源模型实战:轻量级AI助手在中小企业的落地
RWKV7-1.5B-g1a开源模型实战:轻量级AI助手在中小企业的落地 1. 模型简介 rwkv7-1.5B-g1a 是一个基于 RWKV-7 架构的多语言文本生成模型,专为中小企业设计的轻量级AI助手解决方案。这个1.5B参数的模型在保持较小体积的同时,提供了足够强大的…...
CIC-IDS-2018数据集 代码预处理
CIC-IDS-2018数据集 预处理 数据集的获取地址在 https://aistudio.baidu.com/datasetdetail/60692 第一次登陆,注册就行,内容随便填就能注册 create_sample_data() 在代码中被注释,没有添加数据之前,可以跑一下这个函数&…...
Cowabunga Lite完全指南:从入门到精通的iOS个性化解决方案
Cowabunga Lite完全指南:从入门到精通的iOS个性化解决方案 【免费下载链接】CowabungaLite iOS 15 Customization Toolbox 项目地址: https://gitcode.com/gh_mirrors/co/CowabungaLite iOS设备的封闭性常常让用户在个性化定制时感到束手束脚,既想…...
G-Helper实战:华硕笔记本硬件控制与性能调优解决方案
G-Helper实战:华硕笔记本硬件控制与性能调优解决方案 【免费下载链接】g-helper Lightweight Armoury Crate alternative for Asus laptops. Control tool for ROG Zephyrus G14, G15, G16, M16, Flow X13, Flow X16, TUF, Strix, Scar and other models 项目地址…...
