【c++】VSCode配置 c++ 环境(重新制作)

news2024/12/23 1:46:01

上一篇帖子【c++】VSCode配置 c++ 环境(小白教程)_vscode配置c/c++环境_StudyWinter的博客-CSDN博客

大火,但是依旧有很多小伙伴反应没有配好环境,今天打算重新写一个教程,希望对大家有帮助。

1 MinGW下载安装

在CSDN上传了我自己的MinGW,供大家下载,已经配置好了,直接解压配置环境变量即可:(0积分)(提示:这个版本的MinGW可能玩不了rust,要去下x86_64-win32-seh-rev版本)

https://download.csdn.net/download/Zhouzi_heng/88165270

官网:

Downloading File /68260/mingw-get-setup.exe - MinGW - Minimalist GNU for Windows - OSDN

如果使用官网下载,具体见上一个博客(下载好像也不慢)

打开MinGW,勾选编译器软件

  • mingw32-gcc.bin(c语言文件编译器)
  • mingw32-gcc-g++.bin(c++语言编译器)
  • mingw32-gdb.bin(调试编译后文件)

若在安装的时候报“找不到 xxx 库”的错误,可以重新勾选此库和dll文件

在这里插入图片描述
选择完后,点击 Installation > applychange,等待安装完就ok
在这里插入图片描述

配环境,选择自己MinGW的安装路径的bin文件夹

// 如
D:xxxxx\MinGW\bin”

见图(win 11)

完了之后,win+r,输出cmd,再输入gcc -v

这样子就是安装成功了

2 VS Code下载

下载地址:https://code.visualstudio.com/Download

选system installer(64位电脑选x64)

再安装这两个插件。安装完后重启VS Code

3 配环境

(1)在自己放C++代码的文件夹下新建一个文件夹,再打开

在这里插入图片描述

(2)新建三个目录

.vscode

cpp_cource

exe 

(3)在.vscode下新建三个文件

  • c_cpp_properties.json
  • launch.json
  • tasks.json

下面重点介绍这三个文件的配置

3.1 c_cpp_properties.json

首先查看自己的include path路径。在cmd下输入

gcc -v -E -x c++ -

结果

我们需要的是我框出来这部分的路径。接下是最最重要的部分。

上图我框了6行,直接将这前5行复制出来,先存着

再查自己的MinGW安装路径。找到自己安装的mingw

照着这个路修改

 "D:/mingw64_GCC8.1/mingw64/include/**",
 "D:/mingw64_GCC8.1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../include",

加上这两行,一共7行路径,就修改这7行。我在下面注释了,仔细点看。

将【includePath】和【path】按照自己的路径修该。注意,这两部分是一样的。

最终修改:

{
    "configurations": [
        {
            "name": "Win32",
            "includePath": [
                "${workspaceRoot}",
                // 以下7行需要修改
                "D:/mingw64_GCC8.1/mingw64/include/**",
                "D:/mingw64_GCC8.1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../include",
 
                // 将查询结果前5行直接粘进来
                "D:/mingw64_GCC8.1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++",
                "D:/mingw64_GCC8.1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32",
                "D:/mingw64_GCC8.1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward",
                "D:/mingw64_GCC8.1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include",
                "D:/mingw64_GCC8.1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "__GNUC__=6",
                "__cdecl=__attribute__((__cdecl__))"
            ],
            "intelliSenseMode": "msvc-x64",
            "browse": {
                "limitSymbolsToIncludedHeaders": true,
                "databaseFilename": "",
                "path": [
                    "${workspaceRoot}",
                     // 以下7行需要修改
                    "D:/mingw64_GCC8.1/mingw64/include/**",
                    "D:/mingw64_GCC8.1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../include",
                    
                    // 将查询结果前5行直接粘进来
                    "D:/mingw64_GCC8.1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++",
                    "D:/mingw64_GCC8.1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32",
                    "D:/mingw64_GCC8.1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward",
                    "D:/mingw64_GCC8.1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include",
                    "D:/mingw64_GCC8.1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed"
                ]
            }
        }
    ],
    "version": 4
}

3.2 launch.json

根据自己路径修改 "miDebuggerPath"。这里只有一处需要修改,我标出来了。

{  
    "version": "0.2.0",  
    "configurations": [  
        {  
            "name": "(gdb) Launch", // 配置名称,将会在启动配置的下拉菜单中显示  
            "type": "cppdbg",       // 配置类型,这里只能为cppdbg  
            "request": "launch",    // 请求配置类型,可以为launch(启动)或attach(附加)  
            "program": "${workspaceFolder}/exe/${fileBasenameNoExtension}.exe",// 将要进行调试的程序的路径  
            "args": [],             // 程序调试时传递给程序的命令行参数,一般设为空即可  
            "stopAtEntry": false,   // 设为true时程序将暂停在程序入口处,一般设置为false  
            "cwd": "${workspaceFolder}", // 调试程序时的工作目录,一般为${workspaceFolder}即代码所在目录  
            "environment": [],  
            "externalConsole": true, // 调试时是否显示控制台窗口,一般设置为true显示控制台  
            "MIMode": "gdb",  
 



 
            // 这里的路径需要修改。改成自己的路径
            "miDebuggerPath": "D:/mingw64_GCC8.1/mingw64/bin/gdb.exe",
 
 




 
            "preLaunchTask": "g++", // 调试会话开始前执行的任务,一般为编译程序,c++为g++, c为gcc  
            "setupCommands": [  
                {   
		    "description": "Enable pretty-printing for gdb",  
                    "text": "-enable-pretty-printing",  
                    "ignoreFailures": true  
                }  
            ]  
        }  
    ]  
}

3.3 tasks.json

直接粘

{
    "version": "2.0.0",
    "command": "g++",
    "args": [
        "-g",
        "${file}",
        "-o",
        "${workspaceFolder}/exe/${fileBasenameNoExtension}.exe"
    ], // 编译命令参数
    "problemMatcher": {
        "owner": "cpp",
        "fileLocation": [
            "relative",
            "\\"
        ],
        "pattern": {
            "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
            "file": 1,
            "line": 2,
            "column": 3,
            "severity": 4,
            "message": 5
        }
    }
}

3.4 测试

#include <iostream>
using namespace std;
 
int main(int argc, char const *argv[])
{
    cout << "hello world" << endl;
    system("pause");
    return 0;
}

注意在test01.cpp的界面下按Fn + f5

结果

以后直接复制这个工程写代码。

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

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

相关文章

高温环境下光模块光功率降低的原因与解决方案

光模块是光纤通信系统中的关键组件&#xff0c;其稳定的光功率输出对于确保通信质量至关重要。然而&#xff0c;高温环境下光模块的光功率往往会出现下降&#xff0c;本期文章我们将探讨高温环境下光模块光功率降低的原因和解决方案。 一、高温环境下光功率降低的原因 &#…

深入理解@ConfigurationProperties注解的作用和用法

文章目录 前言一、配置文件application.properties二、添加依赖三、创建配置类四、测试总结 前言 ConfigurationProperties是一个用于定义属性的注解&#xff0c;通常用于Spring应用程序的配置类中。 通过使用ConfigurationProperties注解&#xff0c;可以将外部配置文件中的属…

YOLOv5引入FasterNet主干网络,目标检测速度提升明显

目录 一、背景介绍1.1 目标检测算法简介1.2 YOLOv5简介及发展历程 二、主干网络选择的重要性2.1 主干网络在目标检测中的作用2.2 YOLOv5使用的默认主干网络 三、FasterNet简介与原理解析3.1 FasterNet概述3.2 FasterNet的网络结构3.2.1 基础网络模块3.2.2 快速特征融合模块3.2.…

ENSP-PPP Chap双向认证

日期6-26 &#x1f4ce;PPP chap 双向认证.zip &#x1f4ce;PPP chap 双向认证.docx

Linux常用命令——domainname命令

在线Linux命令查询工具 domainname 显示和设置系统的NIS域名 补充说明 domainname命令用于显示和设置系统的NIS域名。 语法 domainname(选项)(参数)选项 -v&#xff1a;详细信息模式&#xff1b; -F&#xff1a;指定读取域名信息的文件。参数 NIS域名&#xff1a;指定要…

ClickHouse(十一):Clickhouse MergeTree系列表引擎 - MergeTree(1)

进入正文前&#xff0c;感谢宝子们订阅专题、点赞、评论、收藏&#xff01;关注IT贫道&#xff0c;获取高质量博客内容&#xff01; &#x1f3e1;个人主页&#xff1a;含各种IT体系技术&#xff0c;IT贫道_Apache Doris,Kerberos安全认证,大数据OLAP体系技术栈-CSDN博客 &…

通义千问7B本地部署的实战方案

大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的学生进入到算法…

Flink开发环境准备: centos-jdk8

linux-jdk8 - Flink开发环境准备 一、基本介绍二、环境准备1.1 JDK环境1.2 开发工具1.3 Maven环境 三、flink下载安装配置3.1 Flink下载3.2 flink本地模式安装 - linux3.3 常用配置3.4 日志的查看和配置 四、单机 Standalone 的方式运行 Flink 一、基本介绍 Flink底层源码是基于…

架构,性能和游戏 《游戏编程模式》学习笔记

开新坑&#xff0c;准备把《游戏编程模式》这本书啃完。这是一本讲设计模式的书&#xff0c;针对游戏开发而作&#xff0c;写得很好。 以下是读书笔记&#xff0c;文末有原文链接 每个程序都有一定的软件架构&#xff0c;哪怕是全塞到main里也是一种架构好的架构可以把代码写成…

【LeetCode 75】第二十题(2215)找出两数组的不同

目录 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 代码运行结果&#xff1a; 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 找出两个数组中不一样的数,将nums1中有的数而nums2没有的数放在res[0]中,将nums2中有的数二nums1没有的数放在res[1]中. 那我们…

路由器静态路由实验

介绍 静态路由是由管理员手动配置和维护的路由。 如何理解静态路由了&#xff1f;配置一条静态路由就是告诉路由器怎么去往某个目的ip或ip地址段。去往目的地的时候需要查找路由表。 静态路由优缺点&#xff1a; 优点&#xff1a; 静态路由配置简单&#xff0c;并且无需动态…

03.利用Redis实现缓存功能---解决缓存穿透版

学习目标&#xff1a; 提示&#xff1a;学习如何利用Redis实现添加缓存功能解决缓存穿透版 学习产出&#xff1a; 缓存穿透讲解图&#xff1a; 解决方案&#xff1a; 采用缓存空对象采用布隆过滤器 解决方案流程图&#xff1a; 1. 准备pom环境 <dependency><gro…

完整模型的训练套路

从心所欲 不逾矩 天大地大 皆可去 一、官方模型的初使用 使用VGG16模型 VGG模型使用代码示例&#xff1a; import torchvision.models from torch import nndataset torchvision.datasets.CIFAR10(/cifar10, False, transformtorchvision.transforms.ToTensor())vgg16_true …

百度智能创做AI平台

家人们好&#xff0c;在数字化时代&#xff0c;人工智能正引领着一场前所未有的创新浪潮。今天&#xff0c;我们将为大家介绍百度智能创做AI平台&#xff0c;这个为创意赋能、助力创作者的强大工具。无论你是创意工作者、内容创作者&#xff0c;还是想要释放内心创造力的个人&a…

人工智能巨头齐聚,研究和掌控人工智能

这四家公司表示&#xff0c;他们成立了Frontier Model Forum&#xff0c;以确保"前沿AI模型的安全和负责任的开发"。 四家全球最先进的人工智能公司成立了一个研究日益强大的人工智能并建立最佳控制实践的组织&#xff0c;随着公众对技术影响的担忧和监管审查的增加…

Python(七十)元组的遍历

❤️ 专栏简介&#xff1a;本专栏记录了我个人从零开始学习Python编程的过程。在这个专栏中&#xff0c;我将分享我在学习Python的过程中的学习笔记、学习路线以及各个知识点。 ☀️ 专栏适用人群 &#xff1a;本专栏适用于希望学习Python编程的初学者和有一定编程基础的人。无…

基于MFCC特征提取和HMM模型的语音合成算法matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022A 3.部分核心程序 ............................................................................ %hmm是已经…

桥接模式(C++)

定义 将抽象部分(业务功能)与实现部分(平台实现)分离&#xff0c;使它们都可以独立地变化。 使用场景 由于某些类型的固有的实现逻辑&#xff0c;使得它们具有两个变化的维度&#xff0c;乃至多个纬度的变化。如何应对这种“多维度的变化”?如何利用面向对象技术来使得类型…

一分钟完成centos7安装docker

action: 1、下载安装包2、安装docker 1、背景 使用CentOS / Redhat 7 版本的应该偏多。但是&#xff0c;Docker CE在系统中安装的时候&#xff0c;往往会出现一堆依赖包的报错&#xff0c;解决依赖包需要耗费不短的时间。 经验证&#xff0c;目前已找到兼容能力强的版本&am…

debug思路 - maven构建报错

问题&#xff1a;maven面板中&#xff0c;进行compile、deploy操作时报错。 debug步骤&#xff1a; 1、鼠标右键选择“修改运行配置”。在运行命令中添加参数-X&#xff0c;用于产生执行调试输出。例如&#xff1a;compile -f -X pom.xml。 2、再次进行compile、deploy操作&…