当前位置: 首页 > news >正文

vscode使用g++编译.c文件或.cpp文件

    vscode是一个跨平台、轻量级、插件非常丰厚的IDE,这里介绍在vscode里使用g++来编译.cpp文件。g++也叫GCC, 在Window中,是使用MinGW方式实现g++的,它分为32位和64位2个版本,其中,MinGW-64是64位的,MinGW-32是32位的。

1、下载并配置g++

1.1 下载g++ 8.1

    下载GCC 64位 编译器,比如MinGW-W64 GCC-8.1,在 Sourceforge官网,选中x86_64-win32-sjlj即可下载,如图(1)所示:

图(1) 下载MinGW-W64-GCC-8.1.0

    MinGW-W64 GCC-8.1 官网地址: MinGW-W64 GCC-8.1.0
    MinGW-W64 GCC-8.1 个人地址: MinGW-W64 GCC-8.1.0 提取码:7b45

1.2 配置g++

    下载之后,会得到一个压缩包:x86_64-8.1.0-release-win32-sjlj-rt_v6-rev0.7z,将这个x86_64-8.1.0-release-win32-sjlj-rt_v6-rev0.7z文件解压缩,会得到一个名称为mingw64的文件夹,如图(2)所示:

图(2) 右击压缩包,选择"解压到当前文件夹",即可得到mingw64文件夹

    然后,把g++的bin路径设置到系统环境变量的Path里,此处的g++的bin路径为:I\Profile\mingw64\bin, 如图(3)、图(4)所示:

## g++的bin路径(即编译路径)
I:\Profile\mingw64\bin
图(3) g++.exe所在的路径,即为g++的编译路径(也叫bin路径)

    右击桌面左下角【开始】–》设置 --》输入"环境"关键字,选择"编辑系统环境变量" --》环境变量 --》系统变量 --》Path --》编辑 --》添加g++的bin路径,如图(5)、图(6)所示:

图(5)在【设置】里,输入"环境" --》选中"编辑系统环境变量"

图(6) 在系统环境变量Path里,添加g++的bin路径

1.3 验证g++

    按Win+R,输入:cmd , 按回车键 ,进入DOS黑框框窗口,输入命令: g++ -v

## 检查g++的版本,
g++ -v

    若可以看到g++的版本号,说明g++环境配置成功,如图(6)所示:

图(6) 查看g++的版本号,以验证g++环境

2、下载vscode、Code Runner插件和C++插件

2.1 下载vscode

    vscode每3个月就有一次版本更新,而且分为Linux、Mac、Window这个平台版本,这里只介绍Window平台版本的下载。
    vscode官网: https://code.visualstudio.com/download
    查看自己电脑的系统位数,若是64位,则安装x64版本的vscode;若是32位,则安装x86版本的vscode。
    右击【我的电脑】–》属性,就可以看到系统位数了,如图(7)、图(8)所示:

图(7) 查看电脑的系统位数

图(8)安装系统位数,来选择对应的版本,此处选择x64表示64位

    下载vscode之后,安装即可。

2.2 Code Runner插件

    点击vscode左侧的【插件】按钮 --》输入:runner关键字,选中Code Runner安装即可,如图(9)所示:

图(9)输入:runner,选中Code Runner安装即可

2.3 安装C++插件

    点击vscode左侧的【插件】按钮 --》输入:C++关键字,选中C/C++安装,接着选择C/C++ Extension Pack安装,然后选择C/C++ Themes安装,如图(10)所示:

图(10)安装C/C++编译器、提示助手、类visual studio主题

3、在vscode里设置g++环境

    新建一个文件夹,比如新建一个名称为hello的文件夹,然后右击它,使用vscode打开,在hello文件夹新建一个名称.vscode文件夹,然后在.vscode文件夹里新建c_cpp_properties.json文件,填入如下信息:
    //c_cpp_properties.json 文件内容

{"configurations": [{"name": "MinGW64","includePath": ["${workspaceFolder}/**","I:\\Profile\\mingw64\\include"],"defines": ["_DEBUG","UNICODE","_UNICODE"],"browse":{"path":["${workspaceFolder}","I:\\Profile\\mingw64\\include"]},"windowsSdkVersion": "8.1","compilerPath": "I:\\Profile\\mingw64\\bin\\g++.exe","cStandard": "c11","cppStandard": "c++11","intelliSenseMode": "gcc-x64"}],"version": 4
}

    在hello文件夹里新建一个hello.cpp文件,内容如下:
    //hello.cpp文件

#include <iostream>
using namespace std;int main(){int a=2,b=3, c=0;c = a+b;cout<<"c="<<c<<",a="<<a<<",b="<<b<<endl;return 0;
}
图(11) hello工程的目录结构

    右击hello.cpp --》Run Code 即可编译和运行,如图(12)、图(13)所示:

图(12) 右击hello.cpp --》Run Code 即可运行

    效果如下:

图(13) 使用g++编译和运行.cpp文件

    至此,g++在vscode的环境和工程设置,全部部署完成。

相关文章:

vscode使用g++编译.c文件或.cpp文件

vscode是一个跨平台、轻量级、插件非常丰厚的IDE&#xff0c;这里介绍在vscode里使用g来编译.cpp文件。g也叫GCC, 在Window中&#xff0c;是使用MinGW方式实现g的&#xff0c;它分为32位和64位2个版本&#xff0c;其中&#xff0c;MinGW-64是64位的&#xff0c;MinGW-32是32位的…...

云计算的服务模式包括哪些|PetaExpress云服务商

云计算&#xff08;cloud computing&#xff09;它是一种分布式计算&#xff0c;是指通过网络“云”将巨大的数据计算处理程序分解成无数的小程序&#xff0c;然后通过由多个服务器组成的系统进行处理和分析&#xff0c;得到结果并返回给用户。云计算作为一种基于互联网的新型超…...

iOS--通知、代理、单例模式总结

通知 概要 观察者和被观察者都无需知晓对方&#xff0c;只需要通过标记在NSNotificationCenter中找到监听该通知所对应的类&#xff0c;从而调用该类的方法。并且在NSNotificationCenter中&#xff0c;观察者可以只订阅某一特定的通知&#xff0c;并对齐做出相应操作&#xf…...

选择最佳安全文件传输方法的重要性

在数字化时代&#xff0c;文件的传输是商务、教育、科研、医学等领域不可或缺的工作流程。为了保障数据安全&#xff0c;选择最佳安全文件传输方法非常关键。在本文中&#xff0c;我们将探讨选择最佳安全文件传输方法的重要性。 第一、最佳安全文件传输方法可以保证文件内容不被…...

IBM LSF 集群虚拟化和工作负载管理解决方案

IBM LSF 集群虚拟化和工作负载管理解决方案 全面综合的工作负载管理解决方案&#xff0c;不仅能够简化 HPC&#xff0c;还能大幅改善用户和管理员体验、可靠性和性能 用途 IBM Spectrum LSF Suites 组合通过为任务关键型 HPC 环境提供集成解决方案&#xff0c;重新定义集群虚…...

C++(14):重载运算与类型转换

当运算符被用于类类型的对象时&#xff0c;允许我们为其指定新的含义&#xff1b;同时&#xff0c;也能自定义类类型之间的转换规则。和内置类型的转换一样&#xff0c;类类型转换隐式地将一种类型的对象转换成另一种我们所需类型的对象。 当运算符作用于类类型的运算对象时&a…...

【深度学习】基于图形的机器学习:概述

一、说明 图神经网络&#xff08;GNN&#xff09;在数据科学和机器学习中越来越受到关注&#xff0c;但在专家圈之外仍然知之甚少。为了掌握这种令人兴奋的方法&#xff0c;我们必须从更广泛的图形机器学习&#xff08;GML&#xff09;领域开始。许多在线资源谈论GNN和GML&…...

内存泄漏是什么?有什么危害

内存泄漏是什么&#xff1f;有什么危害 1. 前言1.内存泄漏是什么&#xff1f;2. 为什么会发生内存泄漏3. 内存泄漏的危害4. 总结 1. 前言 在各种项目开发中&#xff0c;内存泄漏是一个很严重的问题。对资源管理、性能优越、系统稳定性&#xff0c;以及是否安全产生极大印象。本…...

【项目设计】基于负载均衡的在线oj平台

目录 一、项目介绍 二、开发环境以及技术 三、概要设计 四、关键算法 五、项目演示 六、代码实现 一、项目介绍 该项目是基于负载均衡的在线oj&#xff0c;模拟平时刷题网站&#xff08;leetcode和牛客&#xff09;写的一个在线判题系统 项目主要分为五个模块&#xff…...

生产环境Session解决方案、Session服务器之Redis

目录 一、服务器配置 二、安装nginx 三、安装配置Tomcat&#xff1a; 四、配置session Session服务器之Redis Redis与Memcached的区别 安装部署redis 一、服务器配置 IP地址 主机名 软件包列表 192.168.100.131 huyang1 nginx 192.168.100.133 huyang3 JDK Tomca…...

SPECjvm2008_1_01 openjdk8 x86_64 ARM64 运行时长、成绩 Run is valid, but not compliant

i5-9600k 架构&#xff1a; x86_64CPU 运行模式&#xff1a; 32-bit, 64-bitAddress sizes: 39 bits physical, 48 bits virtual字节序&#xff1a; Little Endian CPU: 6在线 CPU 列表&#xff1a; …...

安卓:百度地图开发(超详细)

一、百度地图介绍 百度地图SDK是一套供开发者使用的软件开发工具包&#xff08;SDK&#xff09;&#xff0c;用于在Android应用程序中集成和使用百度地图功能。通过使用百度地图SDK&#xff0c;开发者可以实现在自己的应用中显示地图、获取定位信息、进行搜索、导航等功能。 百…...

DDSv1.4规范(中文版)

实时数据分发 (DDS) V1.4 (2015-04-10正式发布) https://www.omg.org/spec/DDS/1.4/PDF http://www.omg.org/spec/DDS/20140501/dds_dcps.idl...

oracle,获取每日24*60,所有分钟数

前言&#xff1a; 为规范用户的时间录入&#xff0c;因此我们采用下拉的方式&#xff0c;让用户选择需要的时间&#xff0c;因此我们需要将一天24小时的时间拆分为类似00:00,00:01...23:00,23:01,23:59。因此我们需要生成24*601440行的下拉复选值。具体效果如下图所示。 思路 1…...

vue elementui table去掉滚动条与实现表格自动滚动且无滚动条

当table内容列过多时&#xff0c;可通过height属性设置table高度以固定table高度、固定表头&#xff0c;使table内容可以滚动。 现在需求是右侧滚动条不好看&#xff0c;需要去除滚动条&#xff0c;并隐藏滚动条所占列的位置。让他可以滚动但是不出现滚动条,不然即时隐藏了滚动…...

SDK命令行工具配置

SDK命令行工具配置 最早的Android SDK工具包&#xff0c;包含一些GUI的工具。 而在一些场景&#xff08;如打包&#xff09;只需要命令行工具时&#xff0c;下载 command-line tools 即可。 到 Android Studio下载页 &#xff0c;找到 Command line tools only 下载。 命令…...

【数字IC基础】竞争与冒险

竞争-冒险 1. 基本概念2. 冒险的分类3. 静态冒险产生的判断4. 毛刺的消除使用同步电路使用格雷码增加滤波电容增加冗余项&#xff0c;消除逻辑冒险引入选通脉冲 1. 基本概念 示例一&#xff1a; 如上图所示的这个电路&#xff0c;使用了两个逻辑门&#xff0c;一个非门和一个与…...

速成版-带您一天学完python自动化测试(selenium)

Selenium是一套web网站的程序自动化操作解决方案。我们通过编写自动化程序&#xff0c;使得自动完成浏览器界面的相关操作&#xff0c;除了能够自动化的完成相关操作&#xff0c;还能从web页面获取相关信息&#xff0c;然后通过程序进行分析处理&#xff0c;本质上就是提升从网…...

windows 删除无法删除的文件

有两种原因&#xff1a; 文件被占用文件无权限 解决方案 通用解决方案是进入安全模式进行删除 安全模式&#xff1a; 不会启动非必要的进程有最高的系统权限 进入系统配置 安全引导&#xff0c;重启 删除文件 修改系统配置为正常启动 重启...

FFmpeg[7] - FFmpeg之预设编码参数preset

目录 前言 正文 一、定义与作用 二、取值范围 三、枚举值 四、使用实例...

Python爬虫实战:研究MechanicalSoup库相关技术

一、MechanicalSoup 库概述 1.1 库简介 MechanicalSoup 是一个 Python 库,专为自动化交互网站而设计。它结合了 requests 的 HTTP 请求能力和 BeautifulSoup 的 HTML 解析能力,提供了直观的 API,让我们可以像人类用户一样浏览网页、填写表单和提交请求。 1.2 主要功能特点…...

[2025CVPR]DeepVideo-R1:基于难度感知回归GRPO的视频强化微调框架详解

突破视频大语言模型推理瓶颈,在多个视频基准上实现SOTA性能 一、核心问题与创新亮点 1.1 GRPO在视频任务中的两大挑战 ​安全措施依赖问题​ GRPO使用min和clip函数限制策略更新幅度,导致: 梯度抑制:当新旧策略差异过大时梯度消失收敛困难:策略无法充分优化# 传统GRPO的梯…...

SciencePlots——绘制论文中的图片

文章目录 安装一、风格二、1 资源 安装 # 安装最新版 pip install githttps://github.com/garrettj403/SciencePlots.git# 安装稳定版 pip install SciencePlots一、风格 简单好用的深度学习论文绘图专用工具包–Science Plot 二、 1 资源 论文绘图神器来了&#xff1a;一行…...

定时器任务——若依源码分析

分析util包下面的工具类schedule utils&#xff1a; ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类&#xff0c;封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz&#xff0c;先构建任务的 JobD…...

vue3 字体颜色设置的多种方式

在Vue 3中设置字体颜色可以通过多种方式实现&#xff0c;这取决于你是想在组件内部直接设置&#xff0c;还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法&#xff1a; 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...

DBAPI如何优雅的获取单条数据

API如何优雅的获取单条数据 案例一 对于查询类API&#xff0c;查询的是单条数据&#xff0c;比如根据主键ID查询用户信息&#xff0c;sql如下&#xff1a; select id, name, age from user where id #{id}API默认返回的数据格式是多条的&#xff0c;如下&#xff1a; {&qu…...

关于 WASM:1. WASM 基础原理

一、WASM 简介 1.1 WebAssembly 是什么&#xff1f; WebAssembly&#xff08;WASM&#xff09; 是一种能在现代浏览器中高效运行的二进制指令格式&#xff0c;它不是传统的编程语言&#xff0c;而是一种 低级字节码格式&#xff0c;可由高级语言&#xff08;如 C、C、Rust&am…...

Android Bitmap治理全解析:从加载优化到泄漏防控的全生命周期管理

引言 Bitmap&#xff08;位图&#xff09;是Android应用内存占用的“头号杀手”。一张1080P&#xff08;1920x1080&#xff09;的图片以ARGB_8888格式加载时&#xff0c;内存占用高达8MB&#xff08;192010804字节&#xff09;。据统计&#xff0c;超过60%的应用OOM崩溃与Bitm…...

ABAP设计模式之---“简单设计原则(Simple Design)”

“Simple Design”&#xff08;简单设计&#xff09;是软件开发中的一个重要理念&#xff0c;倡导以最简单的方式实现软件功能&#xff0c;以确保代码清晰易懂、易维护&#xff0c;并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计&#xff0c;遵循“让事情保…...

现有的 Redis 分布式锁库(如 Redisson)提供了哪些便利?

现有的 Redis 分布式锁库&#xff08;如 Redisson&#xff09;相比于开发者自己基于 Redis 命令&#xff08;如 SETNX, EXPIRE, DEL&#xff09;手动实现分布式锁&#xff0c;提供了巨大的便利性和健壮性。主要体现在以下几个方面&#xff1a; 原子性保证 (Atomicity)&#xff…...