【集成开发环境】-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 在线安装包有可能无法正常下载,此时可以选择直接下载绿色版:
绿色版下载地址
在这里插入图片描述

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

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

相关文章

Python算法100例-4.1 将真分数分解为埃及分数

完整源代码项目地址,关注博主私信源代码后可获取 1.问题描述2.问题分析3.算法设计4.补充知识点5.确定程序框架6.完整的程序 1.问题描述 现输入一个真分数,请将该分数分解为埃及分数。 2.问题分析 真分数(a proper…

vulture,一个有趣的 Python 死代码清除库!

目录 前言 什么是 Python Vulture 库? 核心功能 使用方法 1. 安装 Vulture 库 2. 使用 Vulture 命令行工具 3. 定制规则 实际应用场景 1. 代码库维护 2. 项目迁移和重构 3. 优化性能 4. 代码审查和质量检查 总结 前言 大家好,今天为大家分享一个好…

ideaSSM社区二手交易平台C2C模式开发mysql数据库web结构java编程计算机网页源码maven项目

一、源码特点 idea ssm 社区二手交易平台系统是一套完善的完整信息管理系统,结合SSM框架完成本系统SpringMVC spring mybatis ,对理解JSP java编程开发语言有帮助系统采用SSM框架(MVC模式开发),系统具有完整的源代码…

QML 添加扩展插件QQmlExtensionPlugin

一.添加QQmlExtensionPlugin方式步骤 目的:界面跨软件复用。 项目目录结构如下图: 1.首先,创建一个继承自QQmlExtensionPlugin的类,例如MyPlugin。在这个类中,实现registerTypes()和initializeEngine()方法。 #ifndef …

esp8266调试记录

连接笔记本电脑 使用笔记本电脑的USB接口为NodeMCU开发板供电,你需要确保电压和电流在安全范围内。虽然NodeMCU的输入输出电压限制为3.3V,但是大多数开发板都内置了电压调节器,可以从5V的USB电源降压到3.3V。因此,通常情况下&…

暄桐二期《集字圣教序》21天教练日课又跟大家见面啦

林曦老师的直播课,是暄桐教室的必修课。而教练日课是丰富多彩的选修课,它会选出书法史/美术史上重要的、有营养的碑帖和画儿,与你一起,高效练习。而且暄桐教练日课远不止书法、国画,今后还会有更多有趣的课程陆续推出&…

Ubuntu 22.04 Nvidia Audio2Face Error:Failed to build TensorRT engine

背景 1.在Ubuntu22.04上安装Audio2Face后启动,嘴形不会实时同步。控制台显示如【图一】: 【图一】 2.log日志如下: Error: Error during running command: [‘/home/admin/omniverse/libs/deps/321b626abba810c3f8d1dd4d247d2967/exts/omni.audio2fac…

科研学习|论文解读——了解在线环境中的多数观点形成过程:Facebook的探索性方法(IPM, 2018)

论文标题 Understanding the majority opinion formation process in online environments: An exploratory approach to Facebook 摘要 在在线社区的社会互动过程中,多数观点经常被观察到,但很少有研究用实证数据来解决这一问题。为了确定一个合适的理论…

大模型Gemini 1.5 Pro之我的体验

前言 最近我有幸获得了 Gemini 1.5 Pro 的内测资格,想在这里分享一下我的使用体验。这篇文章并非旨在横向比较各家模型的优劣,也不是探讨 Gemini 的迭代历程。因此,我不会过多关注哪些功能是上一代模型已经实现的,或者哪些是完全…

Java Spring Boot搭配MyBatis的项目开发中关于账户余额并发更新

在Java Spring Boot搭配MyBatis的项目开发中,涉及到多个功能模块同时操作同一数据库表字段(例如用户账户余额)时,为了保证数据的一致性和防止更新过程中的错误(例如余额错账、更新丢失等),需要采…

【TB作品】MSP430,波形发生器,单片机,Proteus仿真

文章目录 题目效果梯形波100个点产生方法锯齿波100个点产生方法c代码和proteus仿真 题目 114 波形发生器的制作 设计要求 设计一个能产生正弦波、方波、三角波、梯形波、锯齿波的波形发生器。设置5个开关K1~K5(从 上到下),分别对应正弦波、方波、三角波、梯形波、锯齿波,按一下…

大模型知识积累——幻觉

什么是大模型幻觉 在大语言模型的文本生成场景下,幻觉是指一本正经的胡说八道。逻辑连贯的自然表述中,有理论或者事实错误,捏造事实等问题。 幻觉问题的危害 LLM幻觉可能产生传播错误知识的后果。对于医疗应用中结果安全和可信AI尤为重要&a…

Android 系统的启动过程

Android 系统的启动流程: RomBoot(只读存储器引导程序):这是设备上电时运行的初始软件。RomBoot执行基本的硬件初始化,确保硬件处于可以运行后续启动阶段的状态。这一阶段非常重要,因为它为整个启动过程奠定…

部署 JimV 私有云

server1 控制节点计算节点192.168.136.131server2 计算节点192.168.136.132 准备环境 基础系统 Centos7 (确保关闭防火墙 禁用SELinux) 私有云平台JimV-3.10.2-x86_64-DVD-240129-CentOS72009.iso 离线安装 将Jimv的镜像上传到server1上 并将其挂载…

Linux之shell循环

华子目录 for循环带列表的for循环格式分析示例shell允许用户指定for语句的步长,格式如下示例 不带列表的for循环示例 基于C语言风格的for循环格式示例注意 while循环格式示例 until循环作用格式示例 循环控制breakcontinue详细语法示例 循环嵌套示例 for循环 for循…

字典树 [Tire]

数据结构、算法总述:数据结构/基础算法 C/C_禊月初三的博客-CSDN博客 字典树,英文名 trie。顾名思义,就是一个像字典一样的树。 Trie 树是一种多叉树的结构,它的特点是所有的字符都存储在树的分支上,并且从根节点到某…

最详细爬虫零基础教程03——Request库的介绍

文章目录 前言一、Request库的使用?二、响应Response中的属性3.用户代理(User-Agent) 前言 Request库是一个Python的第三方库,用于发送HTTP请求和处理HTTP响应。它提供了简单而方便的接口,使得发送HTTP请求变得容易。…

OpenCV(七)——灰度图像的阙值处理以及图像的边界填充

灰度图像的阙值处理 在OpenCV中利用threshold()对灰度图像进行阙值处理,该函数通过将图像中的每个像素值与一个给定的阈值进行比较来工作。如果像素值超过这个阈值,那么像素值将被设置成指定的最大值;如果没有超过阈值,则根据不同…

C语言例:设 int a=11; 则表达式 a+=a-=a*a 的值

注&#xff1a;软件为VC6.0 代码如下&#xff1a; #include<stdio.h> int main(void) {int a11, b;b (aa-a*a); //a*a121 -->a-121结果为a-110 -->a-110结果为a-220printf("表达式aa-a*a 的值为&#xff1a; %d\n",b);return 0; } //优先级&#x…

组播协议详解

1.组播基础 &#xff08;1&#xff09;组播简介 &#xff08;2&#xff09;组播的地址 &#xff08;3&#xff09;组播的MAC地址 &#xff08;4&#xff09;组播的MAC地址 &#xff08;5&#xff09;反向转发路径—RPF 2.IGMP &#xff08;1&#xff09;简介 &#xff0…