vscode——本地配置(C和C++)(1)

本地配置C和C++(1)

  • 什么是vscode
  • vscode和visual studio的区别
  • vscode的本地配置
    • 汉化
  • vscode配置C和C++环境
    • 创建全局变量
    • 安装插件
    • 编写C或C++程序
    • 生成task.json文件
    • 生成.exe文件

今天我们来看看一个开发工具——vscode

什么是vscode

在正式了解vscode之前,我们得了解vscode是什么?

Visual Studio Code(简称 VSCode)是由Microsoft开发的一款免费、轻量级、开源的集成开发环境(IDE)。它支持多种编程语言,并提供了丰富的功能和插件生态系统,使得开发者可以在一个集成的环境中完成编辑、调试、版本控制等工作。
以下是一些 VSCode 的特点和功能:
跨平台性: VSCode 可以在 Windows、macOS 和 Linux 上运行,提供了一致的开发体验。
轻量级: 相较于一些其他大型IDE,VSCode 的启动速度相对较快,占用系统资源较少。
丰富的插件系统: VSCode 支持大量的扩展插件,涵盖了各种编程语言、框架和工具,用户可以根据自己的需求选择和安装这些插件。
内置的 Git 支持: VSCode 集成了 Git 版本控制系统,允许用户在编辑器中进行版本控制操作,查看提交历史,比较文件差异等。
强大的编辑功能: 提供了语法高亮、智能代码完成、代码片段、重构等功能,以提高开发效率。
集成调试器: 支持调试多种编程语言,内置了调试器,用户可以在编辑器中进行代码调试。
任务运行器: 提供了任务运行器,可以配置和运行各种开发任务,比如编译、构建、测试等。
多语言支持: 支持多种编程语言,包括但不限于JavaScript、TypeScript、Python、Java、C++等。
社区活跃: 由于是开源软件,VSCode 的社区非常活跃,用户可以参与讨论、报告问题、贡献代码。
自定义配置: 用户可以通过设置文件进行各种配置,以满足个性化的开发需求。
在这里插入图片描述

下载也很简单,直接搜vscode官网,对应版本下载就可以了。

vscode和visual studio的区别

如果有小伙伴是C,C++方向的。那么一定还接触过另一款软件:visual studio
在这里插入图片描述

那么这两款软件有什么区别呢?
在这里插入图片描述

简单来说,vscode是一个编辑器,最主要的功能就是提供文本编辑上的方便,自己本身并不负责编译代码,如果要让它实现编译代码,得自己安装编译器。

同时,vscode因为丰富的插件功能,使得它支持不同的语言,它的定位更加灵活,适用于各种规模和类型的项目,支持多种编程语言,包括 JavaScript、TypeScript、Python、Java 等。

visual studio更像是专门为C和C++准备的开发环境,拥有企业级别的强大功能,不仅要支持基础的编辑功能,还要支持C和C++的编译,调试,图像化等等。但也正是因为如此,它的插件环境相对封闭,只针对C和C++以及衍生的语言。

vscode的本地配置

下好了vscode之后,我们就要进行一基础的配置:

汉化

首先,这个软件是老外弄得,不适合中国宝宝的体制,我们的让vscode汉化:

找到左侧一栏的这个图标:
在这里插入图片描述
点击进去之后,输入Chinese:
在这里插入图片描述
选择第一个,进行安装(install):

安装好了之后,会弹出是否重启设置语言的窗口:
在这里插入图片描述

点击之后,重启,之后就是中文了:
在这里插入图片描述

vscode配置C和C++环境

之前我们了解过,vscode只是一个编辑器,没有编译的功能,所以我们如果想要它有编译的功能,我们得自己装一个编译器,我们这里选择Mingw的gcc

这里简单了解一下mingw:

MinGW(Minimalist GNU for Windows)是一个开发环境,目的是为Windows系统提供GNU工具集和开发库。它基于GNU工具链,包括GCC编译器和一系列工具,可以在Windows上进行C、C++和其他语言的开发。
MinGW的目标是提供一个轻量级的、接近原生的开发环境,使开发者能够在Windows上使用常见的开发工具和库,而无需使用完整的Cygwin环境或安装Linux操作系统。
以下是MinGW的一些特点和组成部分:
GCC编译器: MinGW使用GCC作为主要编译器,可以编译源代码为可执行文件。
头文件和库文件: MinGW提供了一系列标准的C、C++头文件和库文件,使得开发者能够开发和运行跨平台的应用程序。这些文件可以方便地集成到开发环境中,以供程序使用。
命令行工具: MinGW还提供了一系列实用工具,例如文本处理工具、调试器、打包工具等,方便开发者进行开发和调试。
MSYS: MinGW可以与MSYS(Minimal SYStem)集成,提供了类似Linux终端的环境,使得在Windows上进行类Unix命令行操作更加方便。
轻量级和简单: 相比于Cygwin等其他工具,MinGW的安装包相对较小且维护相对简单,使得它更容易使用和配置。
MinGW可以通过下载安装包并按照指导进行安装和配置。安装完成后,开发者可以使用MinGW提供的工具和库,进行 C、C++和其他语言的开发,将代码编译为可在Windows上运行的应用程序。

我们直接在百度搜索mingw:
在这里插入图片描述
选择第一个全英文的,点进去:
在这里插入图片描述
此时不要下载,这里我们进入的网页是GUN的不是我们想要的gcc,这时候点击左上角的logo:
在这里插入图片描述
在这里插入图片描述
这个时候在搜索框搜索Mingw:
在这里插入图片描述
选择第二个:
在这里插入图片描述
这个时候点击Files:
在这里插入图片描述
在这里插入图片描述
往下滑,找到这个:
在这里插入图片描述
大家如果还是找不到,直接点击这里也行,会直接跳转到下载的页面:

https://sourceforge.net/projects/mingw-w64/files/

等到下载好了,会出现这么一个压缩包:
在这里插入图片描述

创建全局变量

这个时候,我们在C盘或者D盘,创建一个文件夹,用来管理这个编译器:

我就在D盘创建一个文件夹:
在这里插入图片描述
然后在这个文件夹下,解压我们刚刚下好的文件:
在这里插入图片描述
这个时候我们的编译器基本上就装好了,这个时候我们要配置环境变量,win+s调出搜索框,搜索环境变量:
在这里插入图片描述
点击环境变量:
在这里插入图片描述
在这里插入图片描述
这个时候再系统变量下找到PATH:
在这里插入图片描述
在这里插入图片描述
这个时候点击新建,然后我们把我们编译器路径(到bin文件)粘进去:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
之后一直点击确定,就配置好了我们的编译器了。如果不放心,Ctrl+R打开cmd,输入以下指令:
在这里插入图片描述
如果可以出现gcc的版本和gcc的路径,那就是百分之百安装成功。

安装插件

这个时候,我们要安装一些C和C++的插件:
在这里插入图片描述
点击安装,即可完成。

编写C或C++程序

我们创建一个文件夹,来管理我们的文件:
在这里插入图片描述
在vscode里面,点击“打开文件夹”:
在这里插入图片描述
选中对应的文件打开,如果有弹窗,选择信任此作者,就OK:

这个时候,点击这个按钮,创建文件:
在这里插入图片描述
在这里插入图片描述
编写一段简单的代码之后,我们Ctrl+Shift+P打开设置:
在这里插入图片描述

在这里插入图片描述
因为这里我写的是C++代码,所以要点击添加配置,添加一个C++的配置:
在这里插入图片描述

这个时候要配置我们的编译器路径,选择g++的:
在这里插入图片描述
这个时候下面的IntelliSence会报错
在这里插入图片描述
这个时候我们要换成gcc-x64(legacy),(gcc包含了g++):
在这里插入图片描述
这个时候,我们在左侧会多出一个文件:
在这里插入图片描述

生成task.json文件

配置好了之后,我们要生成task.json文件,点击上方的终端,点击配置任务:
在这里插入图片描述

就会生成后缀为.json的文件:
在这里插入图片描述

生成.exe文件

此时,选中我们要运行的文件,然后还是点终端,点击“运行生成任务”
在这里插入图片描述
运行成功,会有这么一个.exe的文件:
在这里插入图片描述
这个时候点击终端,点击新建终端,输入 .\你的.exe文件的名字,回车:
在这里插入图片描述

这个时候程序运行成功。

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

2024年腾讯云4核8G12M配置的轻量服务器同时支持多大访问量?

腾讯云4核8G服务器支持多少人在线访问?支持25人同时访问。实际上程序效率不同支持人数在线人数不同,公网带宽也是影响4核8G服务器并发数的一大因素,假设公网带宽太小,流量直接卡在入口,4核8G配置的CPU内存也会造成计算…

CPU处理器NUMA架构简介

在实际工作中,经常遇到服务器是否开启NUMA、NUMA绑定几颗Core、跨NUMA节点访问的性能下降等等话题。那么NUMA作为非一致性内存访问的多处理器架构,在架构上有什么特性、与SMP架构有哪些不同,调优策略等,本文将作简要介绍。 1、CPU…

一款兼容Win和Mac的iOS设备管理软件iMazing 3 for Windows新功能介绍

iMazing 3 for Windows是一款兼容Win和Mac的iOS设备管理软件。iMazing 3 for Windows能够将音乐、文件、消息和应用等数据从任何 iPhone、iPad 或 iPod 传输到 Mac 或 PC 上。 使用iMazing 3 for Windows独特的 iOS 备份功能保证数据安全:设定自动无线备份时间并支持快照;将备份…

SpringCloud微服务-Ribbon负载均衡

Ribbon负载均衡 文章目录 Ribbon负载均衡1、负载均衡实现原理2、负载均衡策略3、修改负载均衡规则4、饥饿加载 1、负载均衡实现原理 负载均衡实现的流程图: 回到了上个小节所讲述的LoadBalance注解,此注解的含义就是实现对RestTemplate服务的所有操作进…

Windows系统x86机器安装(麒麟、统信)ARM系统详细教程

本次介绍在window系统x86机器上安装国产系统 arm 系统的详细教程。 注:ubuntu 的arm系统安装是一样的流程。 1.安装环境准备。 首先,你得有台电脑,配置别太差,至少4核8G内存,安装window10或者11都行(为啥不能是Window7,你要用也不是不行,你先解决win7补丁更新问题)。…

牛客前端八股文(每日更新)

1.说说HTML语义化? 得分点:语义化标签、利于页面内容结构化、利于无CSS页面可读、利于SEO、利于代码可读 1,标签语义化是指在开发时尽可能使用有语义的标签,比如header,footer,h,p&#xff0c…

计算机设计大赛 深度学习实现语义分割算法系统 - 机器视觉

文章目录 1 前言2 概念介绍2.1 什么是图像语义分割 3 条件随机场的深度学习模型3\. 1 多尺度特征融合 4 语义分割开发过程4.1 建立4.2 下载CamVid数据集4.3 加载CamVid图像4.4 加载CamVid像素标签图像 5 PyTorch 实现语义分割5.1 数据集准备5.2 训练基准模型5.3 损失函数5.4 归…

【红队笔记】linux提权之提权大赏

🍬 博主介绍👨‍🎓 博主介绍:大家好,我是 hacker-routing ,很高兴认识大家~ ✨主攻领域:【渗透领域】【应急响应】 【Java】 【VulnHub靶场复现】【面试分析】 🎉点赞➕评论➕收藏 …

Netty01NIO

NIO基础 NIO :non-blocking io 非阻塞 IO 笔记 www.zgtsky.top 网课:黑马Netty 三大组件 Channel & Buffer channel 有一点类似于 stream,它就是读写数据的双向通道,可以从 channel 将数据读入 buffer,也可以…

ElasticSearch之Search Template和Index Alias

写在前面 本文看下es的search template和index alias。 1:search template 用来定义模板查询语句,运行时只需要将要查询的内容作为参数传进来即可,如下: 接着来测试下,首先来定义数据: DELETE tmdb/ P…

了解docker与k8s

随着 k8s 作为容器编排解决方案变得越来越流行,有些人开始拿 Docker 和 k8s 进行对比,不禁问道:Docker 不香吗? k8s 是 kubernetes 的缩写,8 代表中间的八个字符。 其实 Docker 和 k8s 并非直接的竞争对手两者相互依存…

解决 MySQL 未运行但锁文件存在的问题

查看mysql状态时,显示错误信息"ERROR! MySQL is not running, but lock file (/var/lock/subsys/mysql) exists"。 解决步骤 1、检查 MySQL 进程是否正在运行 在继续之前,我们首先需要确定 MySQL 进程是否正在运行。我们可以使用以下命令检查…

离线数仓(四)【数仓数据同步策略】

前言 今天来把数仓数据同步解决掉,前面我们已经把日志数据到 Kafka 的通道打通了。 1、实时数仓数据同步 关于实时数仓,我们的 Flink 直接去 Kafka 读取即可,我们在学习 Flink 的时候也知道 Flink 提供了 Kafka Source,所以这里不…

C语言-数据结构-顺序表

🌈个人主页: 会编辑的果子君 💫个人格言:“成为自己未来的主人~” 目录 数据结构相关概念 顺序表 顺序表的概念和结构 线性表 顺序表分类 顺序表和数组的区别 顺序表分类 静态顺序表 动态顺序表 头插和尾插 尾插 数据结构相关概念 数据结构…

Mendix 10.7 发布- Go Mac It!

在我们上个月发布了硕果累累的 Mendix 10.6 MTS 之后,您是否还没有抚平激动的情绪?好吧,不管您是否已经准备好,本月将带来另一个您想知道的大亮点——Mac版Studio Pro!但这还不是全部。本月,我们还将推出Re…

云计算 - 以阿里云为例,企业上云策略全览与最佳实践

一、什么是云采用框架CAF 云采用框架(Cloud Adoption Framework,简称CAF)为企业上云提供策略和技术的指导原则和最佳实践,帮助企业上好云、用好云、管好云,并成功实现业务目标。 本云采用框架是基于服务大量企业客户的…

《上海市交通领域科技创新发展行动计划》发布

《上海市交通领域科技创新发展行动计划》发布:构建北斗交通产业链 日前,上海市交通委、上海市科委联合印发《上海市交通领域科技创新发展行动计划》,提出至2026年末,基本建成符合上海科创中心和交通强市建设要求的交通领域科技创…

[HackmyVM]靶场 Azer

kali:192.168.56.101 主机发现 arp-scan -l靶机:192.168.56.103 端口扫描 nmap -p- 192.168.56.103 开启了80 3000端口 看一下80端口 一直在那转,看源码也没什么有用的东西 扫一下目录 扫不到什么东西 看看另一个端口 是个登录界面 输入admin/admin测试 错误…

Java学习--学生管理系统(残破版)

代码 Main.java import java.util.ArrayList; import java.util.Scanner;public class Main {public static void main(String[] args) {ArrayList<Student> list new ArrayList<>();loop:while (true) {System.out.println("-----欢迎来到阿宝院校学生管理系…

python笔记_数据类型

定义&#xff1a;python的变量在使用前必须赋值&#xff0c;数据类型指的是变量指定的内存数据的类型 string字符串类型使用引号int整型整数float浮点型小数bool布尔值(逻辑)输出true/false A&#xff0c;整数类型 整型字节 1,python的整数有十六进制&#xff0c;十进制&#…