【集成开发环境】-VS Code:C/C++ 环境配置

简介

VS Code,全称Visual Studio Code,是一款由微软开发的跨平台源代码编辑器。它支持Windows、Linux和macOS等操作系统,并且具有轻量级、高效、可扩展等特点,深受广大开发者的喜爱。

VS Code拥有丰富的功能特性,包括强大的代码编辑能力、智能代码补全、语法高亮、代码片段、调试支持等。它还内置了Git版本控制系统,方便开发者进行代码的版本管理和协作。此外,VS Code还支持各种主流的开发语言和框架,如JavaScript、TypeScript、Python、C++、Java等,并且可以通过安装扩展来支持更多的语言和框架。

VS Code的界面简洁明了,操作便捷。它提供了丰富的快捷键和自定义设置选项,让开发者可以根据自己的习惯和需求来调整编辑器的功能和外观。同时,VS Code还具有良好的性能表现,即使在处理大型项目时也能保持流畅的运行速度。

总的来说,VS Code是一款功能强大、易于使用、可扩展性好的集成开发环境,适用于各种规模和类型的软件开发项目。无论你是初学者还是资深开发者,都可以尝试使用VS Code来提升你的编程效率和体验。

优点

VS Code的优点主要体现在以下几个方面:

  1. 轻量级且快速:VS Code安装包小,启动速度快,占用内存低,使得开发者可以迅速进入工作状态,无需等待长时间的加载和启动过程。

  2. 强大的编辑功能:VS Code提供了丰富的编辑功能,如语法高亮、智能代码补全、代码片段、自定义快捷键等,这些功能大大提升了代码编写的效率和准确性。

  3. 出色的调试支持:VS Code内置了强大的调试工具,支持断点设置、变量查看、调用堆栈跟踪等功能,使得开发者可以方便地进行代码调试和错误排查。

  4. 丰富的扩展生态:VS Code支持大量的扩展插件,几乎覆盖了所有主流的开发语言和框架。开发者可以根据自己的需求安装相应的插件,进一步扩展VS Code的功能。

  5. 良好的跨平台兼容性:VS Code可以在Windows、Linux和macOS等多个操作系统上运行,为开发者提供了极大的便利性和灵活性。

  6. 集成版本控制:VS Code内置了Git版本控制系统,使得开发者可以方便地进行代码的版本管理和协作。

  7. 高度可定制性:VS Code允许开发者根据自己的习惯和喜好进行个性化设置,如调整界面主题、字体大小、快捷键等,从而打造出符合自己需求的开发环境。

对比

和其他的IDE做一个对比,下表对比了VS Code与其他几个流行的IDE(如IntelliJ IDEA、PyCharm、Xcode和Visual Studio)在几个关键方面的特点:

IDEVS CodeIntelliJ IDEAPyCharmXcodeVisual Studio
轻量级与启动速度
跨平台兼容性
免费与开源✓ (社区版)✓ (社区版)
内置调试器
版本控制集成✓ (Git)✓ (Git, SVN)✓ (Git, SVN)✓ (Git)✓ (Git, TFVC)
智能代码补全
语言支持多种语言通过扩展Java, Kotlin等PythonSwift, Objective-C多种语言
界面自定义
扩展与插件生态
专注于特定语言或领域通用Java生态Python生态Apple生态Windows应用与游戏开发
大型项目支持较好优秀优秀较好优秀

哪个IDE最适合取决于具体的使用场景和个人喜好。

VS Code 配置 C语言开发环境


windows环境下的GCC 下载地址

1.MinGW-w64 安装程序

说明:上面连接下载的就是 MinGW-w64 的安装程序。它本质上是一个下载程序,会根据我们之后的一些设置,选择性的下载相应的组件,并将它们组织在一起。所以,运行前要确定网络通畅,而且你有足够的时间,因为根据你的网速,它可能需要花费一定的时间来下载。
操作:用鼠标双击运行 mingw-w64-install.exe 。
注意:如果出现无法运行,或者安装出错,你可以右键点击它,并在弹出窗口中选择“以管理员身份运行”选项,重新运行 mingw-w64-install.exe ,基本可以解决大部分问题。
在这里插入图片描述

2.MinGW-w64 安装程序欢迎界面

在这里插入图片描述
说明:欢迎使用 MinGW-w64 在线安装程序。
操作:点击红框中的 “Next” 按钮,将会进入下一步安装步骤。

3.从服务器获取 MinGW-w64 文件信息

在这里插入图片描述

说明:这里程序正在链接服务器,以便获取存储在仓库中的 MinGW-w64 的文件明细。
操作:只需等待。

4.MinGW-w64 版本选择

说明:在这个界面,你可以根据所要搭建的开发环境,选择不同的选项,从而下载所需的组件。
操作:选择 Version、Architecture、Threads、Exception、Build revision 下拉列表中适当的选项,接下来将会详细介绍这些选项。

5.基础配置

在这里插入图片描述

选择 gcc 版本
说明:Version 指的是 gcc 的版本,如果没有特殊的需求,一般选择最高的版本号即可。
操作:在这个版本中,最高版本是 6.2.0 ,选中它即可。

选择电脑系统架构
说明:Architecture 是指电脑系统是 32位 还是 64位,根据你的电脑系统做出对应选择。
操作:我的电脑系统是 64位 的,所以我选择了 x86_64,如果你是 32位 系统,则选择 i686 即可。

选择操作系统接口协议
说明:这个世界上只有两种操作系统,符合 posix 协议的,和 Windows 。如这个笑话所说的,如果你想要开发 Windows 程序,需要选择 win32 ,而开发 Linux、Unix、Mac OS 等其他操作系统下的程序,则需要选择 posix 。
操作:我只开发在 Windows 下运行的程序,所以选择了 win32 。

选择异常处理模型(64位)
说明:异常处理在开发中非常重要,你在开发的过程中,大部分的时间会耗在处理各种异常情况上。如果你之前选择了 64位,则这里有两个异常处理模型供你选择,seh 是新发明的,而 sjlj 则是古老的。seh 性能比较好,但不支持 32位。 sjlj 稳定性好,支持 32位。
操作:我这里选择了 seh 。

选择异常处理模型(32位)
说明:选择了 32位 后,则可以用 dwarf 和 sjlj 两种异常处理模型。同样的,dwarf 的性能要优于 sjlj ,可以它不支持 64位 。
操作:建议选择 dwarf 。

建立修订
说明:暂时没弄明白是做什么的。(知道的人请留言)
操作:选择默认选项。
在MinGW-w64的安装过程中,Build Revision是一个选项,但它的具体作用可能并不直观或明确。在大多数情况下,这个选项可能涉及到构建版本或修订版本的选择。对于大多数用户来说,选择默认选项通常是安全的,除非你有特定的需求或了解这个选项的详细作用。

6.环境变量

在这里插入图片描述

设置好之后呢,我们win+r,然后输入cmd,调出控制台,输入 gcc -v ,有正常的版本输出,就OK了。
在这里插入图片描述

7.VS Code配置

按快捷键Ctrl+Shift+P调出命令面板,输入C/C++,选择“Edit Configurations(UI)”进入配置
CT

配置编译器路径
在这里插入图片描述
配置 IntelliSense mode
在这里插入图片描述
右侧出现.vscode/c_cpp_properties.json 就配置成功了
接下来,我们直接定位到一个c源文件,按F5,在弹出的控制台菜单中,选择g++的选项:
在这里插入图片描述
此时会自动生成一个task.json。并运行程序。
在这里插入图片描述

安装问题

MinGW-w64 在线安装包有可能无法正常下载,此时可以选择直接下载绿色版:
绿色版下载地址
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

c语言(字符串函数和内存函数的模拟实现)

1、模拟strlen&#xff08;临时变量法&#xff09; #include <stdio.h> #include <assert.h> int my_strlen(const char* str); int main() {char str[] "abcdefh";int ret my_strlen(str);printf("%d", ret);return 0; } int my_strlen( c…

代码随想录算法训练营第四十七天|198.打家劫舍, 213.打家劫舍II , 337.打家劫舍III

198.打家劫舍 https://leetcode.com/problems/house-robber/description/ 思路&#xff1a; 经典的动态规划问题&#xff0c;首先确定dp 数组记录的是打劫到第i家时的收获&#xff0c; dp[0] 0&#xff0c; dp[1] values[0]. 然后到第i 家有两个选择&#xff0c; 一个是打劫…

koa2+vue3通过exceljs实现数据导出excel文档

服务端安装exceljs依赖 npm i exceljs服务端实现代码 实现导出excel文件工具方法 const ExcelJS require(exceljs); /*** description: 导出excel文件* param {*} fileHeader 导出的表头* param {*} data 导出的数据* param {*} ctx 上下文对象* return {*}*/ async funct…

计算机三级网络技术综合题第三题、第四题详细解析

第三大题 DHCP报文分析&#xff08;10分&#xff09; 一、DHCP工作流程&#xff08;一般情况下&#xff09; 报文摘要 对应上面报文1—4 报文1、3DHCP&#xff1a;Request&#xff1b; 报文2、4DHCP&#xff1a;Reply。 例题&#xff08;第三套&#xff09;&#xff1a;在一…

Flutter 当涉及Listview的复杂滑动布局良好布局方式

目录 引 代码以及概叙 详细解释 SingleChildScrollView shrinkWrap 属性 NeverScrollableScrollPhysics 引 当我们构建界面&#xff0c;很多时候都会需要显示一个能滑动的流布局&#xff0c;同时这个布局还要有些其他的界面元素&#xff0c;同时在flutter中&#xff0c;滑…

大型项目中的敏捷开发实践:原则、方法与工具的应用经验分享

引言 在软件开发领域&#xff0c;大型项目往往伴随着高风险和复杂性&#xff0c;传统的瀑布模型往往难以应对快速变化的需求和不确定的环境。而敏捷开发方法以其灵活、快速响应变化的特点&#xff0c;逐渐成为大型项目管理的有力武器。本文旨在分享我在大型项目中应用敏捷开发…

程序员入行忠告!

点击下方“JavaEdge”&#xff0c;选择“设为星标” 第一时间关注技术干货&#xff01; 关注我&#xff0c;紧跟本系列专栏文章&#xff0c;咱们下篇再续&#xff01; 作者简介&#xff1a;魔都技术专家兼架构&#xff0c;多家大厂后端一线研发经验&#xff0c;各大技术社区头部…

十大经典排序之归并排序

文章目录 概要整体架构流程代码实现小结 概要 归并排序&#xff08;Merge sort&#xff09;是建立在归并操作上的一种有效的排序算法。该算法是采用分治法&#xff08;Divide and Conquer&#xff09;的一个非常典型的应用。 作为一种典型的分而治之思想的算法应用&#xff0…

十五、自回归(AutoRegressive)和自编码(AutoEncoding)语言模型

参考自回归语言模型&#xff08;AR&#xff09;和自编码语言模型&#xff08;AE&#xff09; 1 自回归语言模型&#xff08; AR&#xff09; 自回归语言模型&#xff08;AR&#xff09;就是根据上文内容&#xff08;或下文内容&#xff09;预测下一个&#xff08;或前一个&…

安装OpenEBS,镜像总是报错ImagePullBackOff或者ErrImagePull的解决方法

按照 KubeSphere 官方文档安装 OpenEBS&#xff0c;镜像总是报错ImagePullBackOff或者ErrImagePull的解决方法 helm 有很多更换 源 的文章&#xff0c;有一些是写更换阿里云的源&#xff0c;但是阿里云的源根本没更新OpenEBS的镜像。 在网上找到1个可用的源&#xff1a; 可用的…

VSCODE的常用插件

1、中文设置 &#xff08;1&#xff09;搜索 chinese Chinese (Simplified) Language Pack for Visual Studio Code C/C Extension Pack &#xff08;2&#xff09;配置 通过使用“Configure Display Language”命令显式设置 VS Code 显示语言&#xff0c;可以替代默认 UI…

计算最长的字符串长度

本题要求实现一个函数&#xff0c;用于计算有n个元素的指针数组s中最长的字符串的长度。 函数接口定义&#xff1a; int max_len( char *s[], int n ); 其中n个字符串存储在s[]中&#xff0c;函数max_len应返回其中最长字符串的长度。 裁判测试程序样例&#xff1a; #inclu…

Django性能优化

1.服务器CPU太高的优化 1>在Django项目中使用line_profiler进行性能剖析&#xff0c;您需要遵循以下步骤来设置并使用它&#xff1a; 注&#xff1a;此种方式似乎中间件无法启动&#xff01;&#xff01;&#xff01; 要使用Django与line_profiler进行特定视图的性能测试…

探讨TCP的可靠性以及三次握手的奥秘

&#x1f31f; 欢迎来到 我的博客&#xff01; &#x1f308; &#x1f4a1; 探索未知, 分享知识 !&#x1f4ab; 本文目录 1. TCP的可靠性机制1.2可靠性的基础上,尽可能得提高效率 2. TCP三次握手过程3. 为何不是四次握手&#xff1f; 在互联网的复杂世界中&#xff0c;TCP&am…

基于springboot的高校教师教研信息填报系统

文章目录 项目介绍主要功能截图&#xff1a;部分代码展示设计总结项目获取方式 &#x1f345; 作者主页&#xff1a;超级无敌暴龙战士塔塔开 &#x1f345; 简介&#xff1a;Java领域优质创作者&#x1f3c6;、 简历模板、学习资料、面试题库【关注我&#xff0c;都给你】 &…

SpringBoot3整合Redis基础操作

SpringBoot3整合Redis&基础应用 配套视频&#xff1a;SpringBoot3整合Redis&基础操作视频 1. 概述 SpringBoot是一种用于构建Java应用程序的开发框架&#xff0c;Redis是一个高性能的键值存储数据库&#xff0c;常用于缓存、会话管理、消息队列等应用场景&#xff0…

亚马逊云科技Glue

Glue 最重要的部分&#xff0c; ETL&#xff1a;用于从 A 点&#xff08;我们的源数据&#xff09;提取、转换和加载数据到 B 点&#xff08;目标文件或数据存储库&#xff09;。 AWS Glue 会为您执行大量此类工作。 转换通常是更繁重的工作&#xff0c;需要从各种来源进行组合…

【嵌入式DIY实例】-自动割草机器

自动割草机器 文章目录 自动割草机器1、割草机器介绍2、硬件准备3、功能设计4、硬件接线5、代码实现本文将介绍如何使用 Arduino 构建一个简易自动割草机机器人或割草机机器人。该机器人可以自动剪掉花园里多余的草。如果花园里有障碍物,它会自动改变方向。帮助以减少人力。 警…

【Elasticsearch】windows安装elasticsearch教程及遇到的坑

一、安装参考 1、安装参考&#xff1a;ES的安装使用(windows版) elasticsearch的下载地址&#xff1a;https://www.elastic.co/cn/downloads/elasticsearch ik分词器的下载地址&#xff1a;https://github.com/medcl/elasticsearch-analysis-ik/releases kibana可视化工具下载…

半小时搭建keycloak环境,构建强大的用户中心

第一步: 安装JDK 第二步: 安装Docker 第三步: 部署 keycloak 写一个dockerfile # docker file FROM quay.io/keycloak/keycloak:19.0.3 as builder# Enable health and metrics support ENV KC_HEALTH_ENABLED=true # 设置健康检查启用标志为true ENV KC_METRICS_EN…