VSCode使用MinGW编译器,配置C/C++环境

目录

一、安装VSCode

二、安装MinGW编译器

1、配置环境变量

2、测试配置是否成功

三、配置VSCode

1、安装所需扩展

2、新建代码存放文件夹

3、添加配置文件

4、配置文件内容

(1)c_cpp_properties.json

(2)launch.json

(3)settings.json

(4)tasks.json

测试


每次换了电脑都忘记配环境的教程,这次直接做个笔记得了。

一、安装VSCode

VSCode安装教程(默认已经装好)

VSCode安装使用教程(最新详细版)_vscode安装教程-CSDN博客

VSCode只是编辑器,所以还需要一个编译器,这里使用MinGW编译器。

二、安装MinGW编译器

下载链接:MinGW Distro - nuwen.net

找到下载的安装包位置,双击,出现一个窗口,意思是选择安装路径,我安装在了D:\software\MinGW\中。然后点击“Extract”安装。

1、配置环境变量

安装完成后打开安装后的目录,打开bin文件目录,复制地址栏【我的路径是D:\software\MinGW\MinGW\bin】。

win11直接搜索“查看高级系统设置”。

查看环境变量

环境变量配置成功,测试是否配置成功。

2、测试配置是否成功

Win+R调出命令提示符,输入cmd,弹出命令行。输入g++ --version,如图显示版本表示配置成功。

三、配置VSCode

1、安装所需扩展

需要安装的:

  •  C/C++ 【必备】
  • Code Runner【必备】
  • Rainbow Brackets【帮助阅读工具, 按需安装】
  • Chinese(Simplified)【中文环境, 按需安装】

2、新建代码存放文件夹

安装完成后新建文件夹存放文件(尽量路径中不要有中文),我的是G:\MyCode\目录。

然后在vscode中文件-->打开文件夹。

3、添加配置文件

点击新建文件夹,并将文件夹命名为.vscode(只能是这个名字)

点击新建文件,新建四个文件。文件名分别为:

  • c_cpp_properties.json

  • launch.json

  • settings.json

  • tasks.json

4、配置文件内容

(1)c_cpp_properties.json

{"configurations": [{"name": "Win64","includePath": ["${workspaceFolder}/**"],"defines": ["_DEBUG", "UNICODE", "_UNICODE"],"windowsSdkVersion": "10.0.18362.0","compilerPath": "D:/software/MinGW/MinGW/bin/g++.exe","cStandard": "c17","cppStandard": "c++17","intelliSenseMode": "gcc-x64"}],"version": 4}

其中,compilerPath这一项要把路径改成刚才g++的安装路径(在MinGW编译器安装的bin目录下)

(2)launch.json

{"version": "0.2.0","configurations": [{"name": "(gdb) Launch", "type": "cppdbg", "request": "launch", "program": "${fileDirname}\\${fileBasenameNoExtension}.exe", "args": [], "stopAtEntry": false,"cwd": "${workspaceRoot}","environment": [],"externalConsole": true, "MIMode": "gdb","miDebuggerPath": "D:/software/MinGW/MinGW/bin/gdb.exe","preLaunchTask": "g++","setupCommands": [{"description": "Enable pretty-printing for gdb","text": "-enable-pretty-printing","ignoreFailures": true}]}]}

miDebuggerPath这一项也要把路径改成刚才g++的安装路径(在MinGW编译器安装的bin目录下)

(3)settings.json

{"files.associations": {"*.py": "python","iostream": "cpp","*.tcc": "cpp","string": "cpp","unordered_map": "cpp","vector": "cpp","ostream": "cpp","new": "cpp","typeinfo": "cpp","deque": "cpp","initializer_list": "cpp","iosfwd": "cpp","fstream": "cpp","sstream": "cpp","map": "c","stdio.h": "c","algorithm": "cpp","atomic": "cpp","bit": "cpp","cctype": "cpp","clocale": "cpp","cmath": "cpp","compare": "cpp","concepts": "cpp","cstddef": "cpp","cstdint": "cpp","cstdio": "cpp","cstdlib": "cpp","cstring": "cpp","ctime": "cpp","cwchar": "cpp","exception": "cpp","ios": "cpp","istream": "cpp","iterator": "cpp","limits": "cpp","memory": "cpp","random": "cpp","set": "cpp","stack": "cpp","stdexcept": "cpp","streambuf": "cpp","system_error": "cpp","tuple": "cpp","type_traits": "cpp","utility": "cpp","xfacet": "cpp","xiosbase": "cpp","xlocale": "cpp","xlocinfo": "cpp","xlocnum": "cpp","xmemory": "cpp","xstddef": "cpp","xstring": "cpp","xtr1common": "cpp","xtree": "cpp","xutility": "cpp","stdlib.h": "c","string.h": "c"},"editor.suggest.snippetsPreventQuickSuggestions": false,"aiXcoder.showTrayIcon": true
}

(4)tasks.json

{"version": "2.0.0","tasks": [{"label": "g++","command": "g++","args": ["-g","${file}","-o","${fileDirname}/${fileBasenameNoExtension}.exe"],"problemMatcher": {"owner": "cpp","fileLocation": ["relative", "${workspaceRoot}"],"pattern": {"regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$","file": 1,"line": 2,"column": 3,"severity": 4,"message": 5}},"group": {"kind": "build","isDefault": true}}]
}

此时环境已经配好了。

注意:以后的C/C++代码文件必须放在.vscode文件夹的文件夹里,否则会出现报错。

测试

测试用了一个最简单的"Hello, World!" 程序。

#include <stdio.h>int main() {printf("Hello, World!\n");return 0;
}

以上就是所有的配置过程,比较简单,但是其中有部分比较细小但需要注意的事项。

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

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

相关文章

支持向量机(SVM)进行文本分类的Python简单示例实现

支持向量机&#xff08;Support Vector Machine&#xff0c;SVM&#xff09;是一种常用的机器学习算法&#xff0c;主要用于分类和回归问题。它的基本思想是将数据映射到高维空间中&#xff0c;使得数据在该空间中线性可分&#xff0c;然后在该空间中寻找最优的超平面&#xff…

基于Java SSM框架实现线上教学平台系统项目【项目源码+论文说明】计算机毕业设计

基于java的SSM框架实现线上教学平台演示 摘要 在社会快速发展的影响下&#xff0c;使线上教学平台的管理和运营比过去十年更加理性化。依照这一现实为基础&#xff0c;设计一个快捷而又方便的网上线上教学平台系统是一项十分重要并且有价值的事情。对于传统的线上教学平台控制…

走进shell

Linux系统启动时&#xff0c;会自动创建多个虚拟控制台。虚拟控制台是运行在Linux系统内存中的终端会话。 打开Linux控制台Terminal使用tty命令查看当前使用的虚拟控制台。 注&#xff1a;tty 表示电传打字机(teletypewriter) $ tty /dev/pts/0表示当前使用的是/dev/pts/0 虚拟…

(1)(1.13) SiK无线电高级配置(五)

文章目录 前言 10 可用频率范围 11 DUTY_CYCLE 设置 12 低延迟模式 13 先听后说 (LBT) 14 升级无线电固件 15 MAVLink协议说明 前言 本文提供 SiK 遥测无线电(SiK Telemetry Radio)的高级配置信息。它面向"高级用户"和希望更好地了解无线电如何运行的用户。 1…

51单片机汇编指令表--STC宏晶MCU

51单片机汇编指令表–STC宏晶MCU 51单片机汇编指令简介 51系列单片机汇编指令表非常庞大&#xff0c;包含了五大类指令&#xff0c;以下是各类指令的一个简要概述和部分示例&#xff1a; 一、数据传送类指令 这些指令用于在寄存器之间、寄存器与存储单元之间以及立即数与寄存…

2645. 构造有效字符串的最少插入数

Problem: 2645. 构造有效字符串的最少插入数 文章目录 思路解题方法复杂度Code 思路 决定开头的差距&#xff1b;决定中间的补足决定末尾的差距&#xff1b; 解题方法 开头的位置对于a不做处理&#xff0c;b则做出加一的处理&#xff0c;c则是加二的处理方法&#xff1b;中间的…

Guava:Strings 字符串处理工具

简介 String 或 CharSequence 实例有关的静态实用程序方法。 类方法说明 官方文档&#xff1a;Strings (Guava: Google Core Libraries for Java 27.0.1-jre API) 方法名称方法说明commonPrefix(CharSequence a, CharSequence b) 返回共同的前缀字符串.commonSuffix(CharSe…

vscode文件配置

lanuch.json {"version": "0.2.0","configurations": [{"name": "(gdb) 启动","type": "cppdbg","request": "launch",// "program": "输入程序名称&#xff0c;例…

C#基础:通过QQ邮件发送验证码到指定邮箱

一、控制台程序 using System; using System.Net; using System.Net.Mail;public class EmailSender {public void SendEmail(string toAddress, string subject, string body){// 设置发件人邮箱地址以及授权码string fromAddress "xxxxxqq.com";string password …

频率阈图像滤波

介绍 频率阈图像滤波是一种在频域中进行图像处理的方法&#xff0c;它基于图像的频率分布来实现滤波效果。具体步骤如下&#xff1a; 将原始图像转换到频域&#xff1a;使用快速傅里叶变换&#xff08;FFT&#xff09;将图像从空间域转换到频域。对频域图像应用频率阈滤波器&a…

CSS3背景样式详解(图像大小,图像位置等)

背景样式 在CSS3中&#xff0c;新增了3个背景属性 属性说明background-size背景大小background-origin背景位置background-clip背景剪切 background-size属性 概念&#xff1a;在CSS3之前&#xff0c;我们是不能用CSS来控制背景图片大小的&#xff0c;背景图片的大小都是由…

深入理解 Flink(三)Flink 内核基础设施源码级原理详解

Hadoop 生态各大常见组件的 RPC 技术实现 Flink RPC 网络通信框架 Akka 详解 1、ActorSystem 是管理 Actor 生命周期的组件&#xff0c;Actor 是负责进行通信的组件。 2、每个 Actor 都有一个 MailBox&#xff0c;别的 Actor 发送给它的消息都首先储存在 MailBox 中&#xff0c…

Tomcat-快速使用

关于Tomcat的概念及来由在Tomcat基本知识中进行了介绍&#xff0c;下面我们直接上手快速使用起来。 一、快速使用 &#xff08;1&#xff09;tomcat下载 &#xff08;2&#xff09;解压缩 &#xff08;3&#xff09;启动程序 &#xff08;4&#xff09;访问tomcat&#xff1a…

Serverless 开拓无服务器时代:云计算的新趋势(下)

&#x1f90d; 前端开发工程师&#xff08;主业&#xff09;、技术博主&#xff08;副业&#xff09;、已过CET6 &#x1f368; 阿珊和她的猫_CSDN个人主页 &#x1f560; 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 &#x1f35a; 蓝桥云课签约作者、已在蓝桥云…

二级C语言备考2

一、单选 共40题 &#xff08;共计40分&#xff09; 第1题 &#xff08;1.0分&#xff09; 题号:6951 难度:较易 第1章 以下叙述中错误的是 A:算法正确的程序可以有零个输入 B:算法正确的程序最终一定会结束 C:算法正确的程序可以有零个输出 D:算…

精华整理几十个Python数据科学、机器学习、深度学习、神经网络、人工智能方面的核心库以及详细使用实战案例,轻松几行代码训练自己的专有人工智能模型

精华整理几十个Python数据科学、机器学习、深度学习、神经网络、人工智能方面的核心库以及详细使用实战案例,轻松几行代码训练自己的专有人工智能模型。 机器学习 人工智能的核心,是使计算机具有智能的根本途径。机器学习专注于算法,允许机器学习而不需要编程,并在暴露于新…

OpenHarmony之编译构建使用指导

目录结构 /build # 编译构建主目录├── __pycache__ ├── build_scripts/ # 编译相关的python脚本 ├── common/ ├── config/ # 编译相关的配置项 ├─…

FlinkAPI开发之窗口(Window)

案例用到的测试数据请参考文章&#xff1a; Flink自定义Source模拟数据流 原文链接&#xff1a;https://blog.csdn.net/m0_52606060/article/details/135436048 窗口的概念 Flink是一种流式计算引擎&#xff0c;主要是来处理无界数据流的&#xff0c;数据源源不断、无穷无尽。…

10个提高 Python Web 开发效率的VS Code插件

VS Code具有灵活、便捷和丰富的可用插件库&#xff0c;是Web开发人员中非常受欢迎的代码编辑器。 本文介绍10个VS Code插件&#xff0c;它们可以提高你作为Web开发人员的工作效率。 1. Live Preview Live Preview插件支持在VS Code的小型浏览器中查看网站。因此&#xff0c;无…

数据库基础5

基本连接语句 教程 https://www.bilibili.com/video/BV1pw41147jm 导jar包 https://blog.csdn.net/qq_40893824/article/details/129118784 import java.sql.*;public class test {public static void main(String[] args) throws SQLException {//用户信息和urlString url …