VS Code 如何搭建CC++开发环境

VS Code 如何搭建C/C++开发环境

文章目录

  • VS Code 如何搭建C/C++开发环境
    • 1. VS Code是什么
    • 2. VS Code的下载和安装
      • 2.1 下载和安装
      • 2.2 环境的介绍
    • 3. VS Code配置C/C++开发环境
      • 3.1 下载和配置MinGW-w64编译器套件
      • 3.2 安装C/C++插件
      • 3.3 重启VS Code
    • 4. 在VS Code上编写C语言代码并编译成功
      • 4.1 打开文件夹
      • 4.2 新建C语言文件, 编写C语言代码
      • 4.3 编译+执行
      • 4.4 调整和优化
    • 5. VS Code的调试

1. VS Code是什么

Visual Studio Code(简称 VS Code)是由微软开发的一款免费、开源、跨平台的代码编辑器,支持 Windows、macOS 和 Linux 系统。它集成了现代编辑器的高效性和轻量级设计,同时通过丰富的扩展插件支持多种开发场景,成为开发者广泛使用的工具之一。

2. VS Code的下载和安装

2.1 下载和安装

下载

  • [下载地址](Visual Studio Code - Code Editing. Redefined)

image-20250301172614705

image-20250301172640902

安装

image-20250301172813889

image-20250301172937460

image-20250301173106810

image-20250301173149572

image-20250301173326272

2.2 环境的介绍

环境介绍

image-20250301173716510

安装中文插件

image-20250301173848936

image-20250301173946584

image-20250301174010009

3. VS Code配置C/C++开发环境

3.1 下载和配置MinGW-w64编译器套件

下载

  • VS Code是一款高级的编辑器, 只能写C/C++代码, 但是不能直接编译代码. 所以, 这里使用MinGW-w64来充当编译器, MinGW-w64移植到windows平台的一个gcc编译器
  • 其实这个官网下载的非常的慢, 所以我这里有下载好的
  • 下载地址, 密码1234

image-20250301201516704

配置

  • 配置环境变量, 将MinGW64添加到Path路径当中, 跟Java中添加JDKPath的时候类似, 即将MinGW64所在的bin文件夹的路径添加到Path中即可
  • 配置好了之后, 就可以在cmd当中, 直接使用bin文件夹下面的命令对C/C++语言程序进行编译, 但是这种方式没有直接使用编译器方便

image-20250301201716312

image-20250301201935620

3.2 安装C/C++插件

image-20250301182422615

因最新版本不会自动生成launch.json文件,给后续优化带来不便,故退回旧版本。

image-20250301203557410

image-20250301203624139

3.3 重启VS Code

安装完成之后, 记得重启VS Code

4. 在VS Code上编写C语言代码并编译成功

4.1 打开文件夹

image-20250301183215780

4.2 新建C语言文件, 编写C语言代码

  • 在VSCode上写代码首先要打开文件夹, 写代码之前, 想清楚把代码放在什么地方

image-20250301183809420

image-20250301183258528

image-20250301183650882

image-20250301184310921

4.3 编译+执行

{3BC3A5C8-8C0F-422E-92EE-207C438CD645}

image-20250301204403665

image-20250301204757215

image-20250301205011611

4.4 调整和优化

请根据自己的需要进行优化

代码运行后 .vscode 文件夹会自动生成在你的源文件目录下

.vscode 文件夹下的 task.jsonlaunch.json 用来控制程序的运行和调试

  • 将程序运行在外部控制台【推荐】
    • 打开.vscode 文件夹下的 launch.json 文件,找到 "externalConsole": false,false 改为 true 并保存

image-20250301205727787

  • 解决中文乱码问题【推荐】
    • 打开.vscode 文件夹下的 task.json 文件,找到 "${fileDirname}\\${fileBasenameNoExtension}.exe" 在后面加上英文 逗号 然后回车到下一行,粘贴下面文本 "-fexec-charset=GBK" 并保存

image-20250301205851733

image-20250301210144561

5. VS Code的调试

和VS中的快捷键是一样的

  • f9: 添加断点

  • f5: 开启调试

  • f10: 逐过程

  • f11: 逐语句(可以进入到函数内部, f10则会直接跳过)

  • ctrl + f5: 直接运行程序不调试

image-20250301211506941

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/980107.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

间隙波导阵列天线 学习笔记2 使用加载脊U型辐射层的一种Ka波段高效率圆极化卫星天线的发展

摘要: 本文提出了一种低剖面,高增益背腔槽阵列天线,基于RGW技术,工作在Ka频段。天线阵列包含两层。上层是一个U型槽阵列,在金属脊上腔体的位置上方,同时下层是RGW公共分布网络,给每个背腔槽等辐…

【软考-架构】1.1、计算机硬件-CPU校验码

GitHub地址:https://github.com/tyronczt/system_architect ✨资料&文章更新✨ 计算机硬件组成 中央处理单元 运算器 算术逻辑单元ALU(实现对数据的算术和逻辑运算);累加寄存器AC(运算结果或源操作数的存放区);数…

【Spring】Spring AOP原理

目录 前言 代理模式 静态代理 优缺点 动态代理 JDK动态代理 工作原理 JDK动态原理实现关键步骤 CGLib动态代理 CGLIB动态代理实现关键步骤 总结 前言 在上一篇中,我们讲解了什么是AOP,以及Spring AOP是如何使用的,那么本篇我们就…

SpringBoot五:JSR303校验

精心整理了最新的面试资料和简历模板,有需要的可以自行获取 点击前往百度网盘获取 点击前往夸克网盘获取 松散绑定 意思是比如在yaml中写的是last-name,这个和lastName意思是一样的,-后的字母默认是大写的 JSR303校验 就是可以在字段增加…

uniapp 系统学习,从入门到实战(六)—— 样式与布局

全篇大概 4700 字(含代码),建议阅读时间 30min 📚 目录 Flex 布局在 UniApp 中的应用响应式设计与适配多端使用 SCSS 提升样式开发效率实战案例演示总结 1. Flex 布局在 UniApp 中的应用 1.1 基础布局实现 通过 display: flex 快速构建弹性容器&#…

Redis---缓存穿透,雪崩,击穿

文章目录 缓存穿透什么是缓存穿透?缓存穿透情况的处理流程是怎样的?缓存穿透的解决办法缓存无效 key布隆过滤器 缓存雪崩什么是缓存雪崩?缓存雪崩的解决办法 缓存击穿什么是缓存击穿?缓存击穿的解决办法 区别对比 在如今的开发中&…

从UNIX到Linux:操作系统进化史与开源革命

从UNIX到Linux:操作系统进化史与开源革命 一、操作系统:数字世界的基石 1.1 什么是操作系统? 操作系统(OS)是计算机系统的核心管理者,承担着三大核心使命: 硬件指挥官:直接管理C…

【Python 语法】算法合集

查找二分查找代码大 O 表示法 广度优先搜索代码 狄克斯特拉算法 递归递归调用栈 分而治之(divide and conquer,D&C)贪心教室调度问题背包问题集合覆盖问题 动态规划背包问题旅游行程最优化 遇到问题时, 如果不确定该如何 高效…

IDEAPyCharm安装ProxyAI(CodeGPT)插件连接DeepSeek-R1教程

背景:最近DeepSeek比较火嘛,然后在githup上也看到了GitHub Copilot,就想着现在AI的准确率已经可以提高工作效率了。所以从网上找了一些编程插件,发现Proxy支持的模型比较多,通用性和适配性比较好。所以本文记录一下pro…

基于javaweb的SSM+Maven幼儿园管理系统设计和实现(源码+文档+部署讲解)

技术范围:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容:免费功能设计、开题报告、任务书、中期检查PPT、系统功能实现、代码编写、论文编写和辅导、论…

Java-Lambda表达式详解

引言:为什么需要 Lambda 表达式? 在 Java 8 之前,处理需要传递代码块的场景(如事件监听、线程任务)通常依赖匿名内部类。这种方式代码冗余,可读性差。例如: // 传统匿名内部类实现 Runnable n…

springboot之集成Elasticsearch

目录 二、Elasticsearch 是什么?三、Elasticsearch 安装四、Springboot 集成 Elasticsearch 的方式五、创建项目集成 Elasticsearch 2.创建 Spring Initializr 项目 es (3).新建实体类 User(4).新建 dao 接口类 UserR…

HBuilderx 插件开发变量名称翻译 ,中文转(小驼峰,大驼峰,下划线,常量,CSS类名)

HBuilderx 插件开发变量名称翻译 ,中文转(小驼峰,大驼峰,下划线,常量,CSS类名) 插件开发文档 工具HBuilderx ,创建项目 创建成功后目录 插件需求 开发时 用来将中文转为&#xff0…

C# 数据转换

1. 文本框读取byte,ushort格式数据 byte addr; if (byte.TryParse(textBoxAddr.Text, out addr) true) {}2. 字节数组 (byte[]) 转换为 ASCII 字符串 byte[] bytes { 72, 101, 108, 108, 111 }; // "Hello" 的 ASCII 码 string s0 Encoding.ASCII.Ge…

unity学习60: 滑动条 和 滚动条 滚动区域

目录 1 滚动条 scrollbar 1.1 创建滚动条 1.2 scrollbar的子物体 1.3 scrollbar的属性 2 滚动视图 scroll View 2.1 创建1个scroll View 2.1.1 实际类比,网页就是一个 scroll view吧 2.2 子物体构成 2.3 核心component : Scroll Rect 3 可视区域 view p…

如何通过 LlamaIndex 将数据导入 Elasticsearch

作者:来自 Elastic Andre Luiz 逐步介绍如何使用 RAG 和 LlamaIndex 提取数据并进行搜索。 在本文中,我们将使用 LlamaIndex 来索引数据,从而实现一个常见问题搜索引擎。 Elasticsearch 将作为我们的向量数据库,实现向量搜索&am…

从黑暗到光明:FPC让盲人辅助眼镜成为视障者的生活明灯!【新立电子】

在科技日新月异的今天,智能技术正以前所未有的方式改变着我们的生活。对于视障人士而言,科技的进步更是为他们打开了一扇通往更加独立自主生活的大门。其中,盲人辅助智能眼镜可以成为视障人士日常生活中的得力助手。FPC在AR眼镜中的应用&…

【MySQL】数据类型与表约束

目录 数据类型分类 数值类型 tinyint类型 bit类型 小数类型 字符串类型 日期和时间类型 enum和set 表的约束 空属性 默认值 列描述 zerofill 主键 自增长 唯一键 外键 数据类型分类 数值类型 tinyint类型 MySQL中,整形可以是有符号和无符号的&…

tableau之标靶图、甘特图和瀑布图

一、标靶图 概念 标靶图(Bullet Chart)是一种用于显示数据与目标之间关系的可视化图表,常用于业务和管理报告中。其设计旨在用来比较实际值与目标值,同时展示额外的上下文信息(如趋势)。 作用 可视化目标…

微服务学习(2):实现SpringAMQP对RabbitMQ的消息收发

目录 SpringAMQP是什么 为什么采用SpringAMQP SpringAMQP应用 准备springBoot工程 实现消息发送 SpringAMQP是什么 Spring AMQP是Spring框架下用于简化AMQP(高级消息队列协议)应用开发的一套工具集,主要针对RabbitMQ等消息中间件的集成…