VS Code安装及(C/C++)环境配置(Windows系统)

news2025/1/15 16:42:59

参考资料2份:

从零开始的vscode安装及环境配置教程(C/C++)(Windows系统)_光中影zone的博客-CSDN博客_vscode运行配置icon-default.png?t=N176https://blog.csdn.net/qq_45807140/article/details/112862592

VSCode配置C/C++环境 - 知乎 (zhihu.com)icon-default.png?t=N176https://zhuanlan.zhihu.com/p/87864677

五个步骤:

1.安装VS Code文本编辑器(系统版) Visual Studio Code - Code Editing. Redefined
2.安装C/C++必备插件与简体中文插件:搜索框搜索“C/C++”以及“chinese”。

其他插件是在操作过程中右下角提示要不要安装的,我随手点了install所以就有了。

   

3.下载并安装C/C++的编译器:MinGW-w64 。解压后是一堆文件,我的路径是将其整包放在了D盘。MinGW-w64 - for 32 and 64 bit Windows - Browse /mingw-w64/mingw-w64-release at SourceForge.net

注意:官方文档中要求安装路径中不能含有空格中文字符,尤其是空格。如果编译器的路径存在空格字符,配置VSCode会无法识别出路径而导致失败(就是因为路径中包含空格字符)。

 

 4.设置系统环境变量并验证:“此电脑”——“属性”——“高级系统设置”——“环境变量”——找到“系统变量”中的“Path”条目——双击或“新建”,添加bin文件的位置。

        验证编译器是否安装成功:打开命令提示符(直接在Windows搜索框输入cmd即可找到),输入gcc -v,然后回车,验证是否成功。(注意:gcc与-v之间有一个空格!)


5.配置 VS Code 里的环境(自主生成三个json文件,而不是手动创建)
5.1)配置编译器(生成c_cpp_properties.json文件):告诉vscode,编译器在哪儿。
5.2)配置构建任务(生成tasks.json文件):告诉vscode,如何构建(编译)程序
5.3)配置调试设置(生成launch.json文件):配置调试的相关信息。

 具体步骤参考:从零开始的vscode安装及环境配置教程(C/C++)(Windows系统)_光中影zone的博客-CSDN博客_vscode运行配置

 如果自主生成三个json文件后,里面的内容还有残缺的话。试试复制粘贴:

  

 

 

 C语言的测试源代码如下:

 C++语言的测试源代码及测试结果如下: 目前还不清楚怎么调整配置让它顺畅运行。。

  #include <iostream>
  using namespace std;

  //#include <stdlib.h>

int main()
{
    int a, b;
    cin>>a>>b;
    cout<<a+b<<endl;

    //printf("VS Code中的C环境配置成功,欧耶!\n");
    //printf("We are family~~~\n");
    
    //system("pause");

    return 0;
}

 

我生成的launch.json文件里面只有两行,直接不能用,所以复制了别人的代码(需要修改miDebuggerPath 后面的路径),结果就行了:

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [

        {
            "name": "(gdb) Launch",
            "preLaunchTask": "g++.exe build active file",//调试前执行的任务,就是之前配置的tasks.json中的label字段
            "type": "cppdbg",//配置类型,只能为cppdbg
            "request": "launch",//请求配置类型,可以为launch(启动)或attach(附加)
            "program": "${fileDirname}\\${fileBasenameNoExtension}.exe",//调试程序的路径名称
            "args": [],//调试传递参数
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": true,//true显示外置的控制台窗口,false显示内置终端
            "MIMode": "gdb",
            "miDebuggerPath": "D:\\mingw64\\bin\\gdb.exe",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ]
        }
    ]
}

后续小问题:

undefined reference to `WinMain
collect2.exe: error: ld returned 1 exit status

新手遇到这种情况,因为VS Code不是Run代码就会自动保存,需要我们先保存代码Ctrl+S,然后再运行Run,问题即可解决。

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

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

相关文章

C语言与Linux系统文件操作函数大全

目录 一、C语言——fopen函数 二、C语言——fwrite函数 三、C语言——fread函数 四、C语言——fseek函数 1、Linux系统——open接口 2、Linux系统——write接口 3、Linux系统——read接口 4、Linux系统——lseek接口 一、C语言——fopen函数 fopen函数是C标准库提供的打…

FreeRTOS入门(02):任务基础使用与说明

文章目录目的创建任务任务调度任务控制延时函数任务句柄获取与修改任务优先级删除任务挂起与恢复任务强制任务离开阻塞状态空闲任务总结目的 任务&#xff08;Task&#xff09;是FreeRTOS中供用户使用的最核心的功能&#xff0c;本文将介绍任务创建与使用相关的基础内容。 创…

QT入门Containers之QTabWidget

目录 一、QTabWidget界面相关 1、布局介绍 2、更改选项卡的名字 3、设置关闭图标 4、代码测试新增页面在构造函数中添加 5、添加图标 6、常用设置 此文为作者原创&#xff0c;创作不易&#xff0c;转载请标明出处&#xff01; 一、QTabWidget界面相关 1、布局介绍 选项…

MySQL 数据库基础命令

MySQL 基础命令 一.了解数据库 1、了解数据库对象 1.表&#xff1a; 用于以有组织方式存储数据。以行和列的格式包含数据。 2.索引&#xff1a; 是内部表结构&#xff0c;MySQL 用它基于一列或多列的值来提供对表中各行的快速访问。 3.视图&#xff1a; 是虚拟表&#…

Netcat安装与使用(nc)

Netcat安装与使用1.Netcat简介1.1.Netcat安装1.1.1.安装整体流程1.1.1.1.安装依赖1.1.1.2.安装Netcat1.1.1.3.配置环境变量1.1.1.4.测试1.2.Netcat基本功能1.3.Netcat常用参数2.Netcat用法2.1.前期准备2.2.banner相关信息抓取2.3.端口扫描2.3.1.扫描指定端口2.3.2.扫描指定端口…

springboot启动图案的修改方法

目录 一、springboot项目启动原图 二、如何修改为你心意的图片 1、首先在resource下创建banner.txt这是默认的名字 2、在banner.txt文件中加入你自己的配置 3、生成的图案 4、推荐几个生成的网址 5、修改字符颜色 6、控制Banner的是否开启、输出位置 第一种&#xff1a; …

yarn的global安装命令不生效

问题 yarn全局安装某个依赖完成之后&#xff0c;但依赖没有生效&#xff0c;一般有两种情况导致的。 解决思路 1.yarn命令问题 yarn在全局安装某个依赖时&#xff0c;global要紧接在yarn之后&#xff0c;然后才是add yarn global add xxxx如果出现global在add之后&#xff…

JAVASE半天速通集锦(only 40点,查找and复习必看)

JAVASE 以下内容根据【尚硅谷】7天搞定Java基础&#xff0c;Java零基础极速入门 视频简单总结而成 所谓变量就是可以改变的向量存储&#xff1b;标识符即标识数据的符号——变量名&#xff1a;只有下划线和$&#xff0c;预定义关键字或保留字不给用 基本数据类型 byte 8,sho…

诚邀您体验人工智能AI

近期&#xff0c;人工智能&#xff08;AI&#xff09;领域动作频频&#xff0c;OPENAI公司Chat GPT的出现&#xff0c;标志着人工智能的研究与应用已经进入了一个崭新的发展阶段&#xff0c;国内腾讯、阿里巴巴、百度、易网、国外微软、谷歌、苹果、IBM、Amazon&#xff0c;等互…

数据结构---顺序表

专栏&#xff1a;数据结构 个人主页&#xff1a;HaiFan. 专栏简介&#xff1a;从零开始&#xff0c;数据结构&#xff01;&#xff01; 顺序表前言接口实现SListInit初始化和SListDestory销毁SListPrint打印表中的元素SListCheckCapacity检查表中空间SListPushBack尾插和SListP…

【项目设计】高并发内存池(一)[项目介绍|内存池介绍|定长内存池的实现]

&#x1f387;C学习历程&#xff1a;入门 博客主页&#xff1a;一起去看日落吗持续分享博主的C学习历程博主的能力有限&#xff0c;出现错误希望大家不吝赐教分享给大家一句我很喜欢的话&#xff1a; 也许你现在做的事情&#xff0c;暂时看不到成果&#xff0c;但不要忘记&…

IPVlan 详解

文章目录简介Ipvlan2同节点 Ns 互通Ns 内与宿主机 通信第三种方法Ns 到节点外部结论Ipvlan31. 同节点 Ns 互通Ns 内与宿主机 通信Ns 内到外部网络总结源码分析ipvlan 收包流程收包流程主要探讨使用 ipvlan 为 cni 通过虚拟网卡的实现。简介 ipvlan 和 macvlan 类似&#xff0c…

深度学习入门(六十七)循环神经网络——注意力机制

深度学习入门&#xff08;六十七&#xff09;循环神经网络——注意力机制前言循环神经网络——注意力机制课件心理学注意力机制注意力机制是显式地考虑随意线索非参注意力池化层Nadaraya-Watson 核回归&#xff1a;总结教材&#xff08;注意力提示&#xff09;1 生物学中的注意…

数据库系统:2. 关系数据库

更好的阅读体验\huge{\color{red}{更好的阅读体验}}更好的阅读体验 文章目录2.1 关系数据结构及形式化定义2.1.1 关系域笛卡尔积关系码三类关系基本关系的性质2.1.2 关系模式2.1.3 关系数据库2.1.4 关系模型的存储结构2.2 关系操作2.2.1 基本的关系操作2.2.2 关系数据语言的分类…

[visual studio]中,关于如何 【调试】 的问题 及 技巧

我们都知道&#xff0c;不会调试的程序员不是一个合格的程序员。 在初学阶段&#xff0c;由于对于语法的不熟悉&#xff0c;我们可能会写出很多语法错误&#xff0c;无法通过编译&#xff0c;编译器会报错&#xff0c;这种错误很好修改。 但是&#xff0c;随着我们不断敲代码…

当面试官问“你的SQL能力怎么样”时,怎么回答才不会掉进应聘陷阱?

在某平台看到一个比较实际的问题&#xff0c;在这里分享给职场新人。 SQL已经是职场最常用的一种编程语言&#xff0c;所以应聘技术或非技术岗位&#xff0c;都可能会被问道一个问题&#xff1a;你的SQL能力怎么样&#xff1f; 对于职场新人来说&#xff08;SQL高手可以无视下…

JavaScript事件循环

大厂面试题分享 面试题库后端面试题库 &#xff08;面试必备&#xff09; 推荐&#xff1a;★★★★★地址&#xff1a;前端面试题库一、异步执行原理1. 单线程的JavaScript我们知道&#xff0c;JavaScript是一种单线程语言&#xff0c;它主要用来与用户互动&#xff0c;以及操…

50-Jenkins-Lockable Resources插件实现资源锁定

Lockable Resources插件实现资源锁定前言安装插件使用插件资源配置Pipeline中使用前言 用来阻止多个构建在同一时间试图使用同一个资源。这里的资源可能是一个节点、一个代理节点、一组节点或代理节点的集合&#xff0c;或者仅仅是一个用于上锁的名字。如果指定的资源没有在全…

ASP.NET MVC | 创建应用程序

目录 首先 NO.1 No.2 App_Data 文件夹 Content 文件夹 Controllers 文件夹 Models 文件夹 Views 文件夹 Scripts 文件夹 最后 首先 一步一步的来&#xff0c;电脑上需要安装vs2019软件&#xff0c;版本高低无所谓&#xff0c;就是功能多少而已。 长这样的&#xff0…

无公网IP如何外网异地登录访问电商进销存系统?

电商进销存系统软件是电商企业必备的重要软件之一。 集订单管理、货品管理、采购管理等功能于一体&#xff0c;主要帮助广大电商用户实现准确、高效的订单处理及精细化的仓储管理。 电商进销存系统软件一般采用B/S结构&#xff0c;用户可在异地访问系统、查看货品库存及管理订…