前言

工作多年,突然发现很多C++的基础都忘记了,加之C++不断更新换代后的各种新特性,于是想重拾C++的基础学习。虽然现在工作都是Linux平台,但考虑到个人方便,自己也仅仅想重温语法,家里家外都可使用,决定搭建一下C++ IDE开发环境。记得N年前刚开始接触编程时,使用的是Visual C++6.0,下面这个可爱的图标很多人一定很熟悉。不过今天想尝鲜新的工具 Visual Studio Code 来搭建C/C++开发环境。

这个官方文章也有很详细的介绍:https://code.visualstudio.com/docs/cpp/config-mingw

VSCode安装流程

1. 下载VScode

》下载链接:https://code.visualstudio.com/Download

》安装过程:安装很简单,我一路默认设置(当然也可以自己选择安装路径啥的),直至完成。

2. 安装C/C++扩展插件工具

》打开VSCode,按照以下步骤安装

》选择扩展工具栏  --> 搜索C++关键字 --> 选择C/C++插件安装,其它一些辅助插件的安装也遵循类似的步骤

3. 下载MinGW

》下载地址:https://sourceforge.net/projects/mingw-w64/files/

》下载的文件:进入网站后不要点击 "Download Lasted Version",往下滑,找到最新版的 "x86_64-posix-seh"

》安装MinGW:下载后是一个7z的压缩包(我下载的x86_64-8.1.0-release-posix-seh-rt_v6-rev0.7z),解压后把mingw64目录移动到安装的位置即可。我的安装位置是:C:\Program Files\mingw64

4. 配置环境变量

》配置MinGW安装的访问路径,比如我的安装位置是C:\Program Files\mingw64

》验证环境变量是否配置成功,按下 win + R,输入cmd,回车键之后输入g++,再回车,如果提示以下信息,则环境变量配置成功

5. 使用简单的.cpp文件配置C++环境

1. 新建空文件夹 Work

2. 打开VScode --> 打开文件夹--> 选择刚刚创建的文件夹Work

3. 新建HelloWorld.cpp文件

#include <iostream>
using namespace std; int main()
{
cout << "Hello World !" << endl;
return 0;
}

4. 进入调试界面添加配置环境,选择 C++(GDB/LLDB),再选择 g++.exe,之后会自动生成 launch.json 配置文件

5. 编辑 launch.json 配置文件,主要修改  "externalConsole": true,

{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "g++.exe - 生成和调试活动文件",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${fileDirname}",
"environment": [],
"externalConsole": true, // 修改此项为true,运行时可以弹出console终端
"MIMode": "gdb",
"miDebuggerPath": "C:\\Program Files\\mingw64\\bin\\gdb.exe",
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "C/C++: g++.exe 生成活动文件"
}
]
}

6. 运行

经过上面的配置就可以运行C++程序了。返回.cpp文件,按F5进行调试,结果如下图

注意运行前可以在return前设置一个断点,否则终端窗口会一闪而过。或者在return 前加一句  system("pause")

至此环境就搭建好了,可以开始C++开发学习之旅了

扩展

如果不习惯英文界面可以安装中文插件切换到中文

最后再啰嗦一句,更详细的信息参考官方网址介绍https://code.visualstudio.com/docs/cpp/config-mingw

Visual Studio Code (VSCode) 配置 C/C++ 开发编译环境的更多相关文章

  1. Visual Studio Code (vscode) 配置 C / C++ 环境

    Visual Studio Code (vscode) 配置 C / C++ 环境 昨天突发奇想,想使用vscode配置C++环境,因为不想下载 Dev OR codeblock,然后借助了很多网上教 ...

  2. 再整理:Visual Studio Code(vscode)下的通用C语言环境搭建

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://www.cnblogs.com/czlhxm/p/11794743.ht ...

  3. 在Visual Studio Code中配置GO开发环境

    一.GO语言安装 详情查看:GO语言下载.安装.配置 二.GoLang插件介绍 对于Visual Studio Code开发工具,有一款优秀的GoLang插件,它的主页为:https://github ...

  4. Visual Studio Code中配置GO开发环境

    在Visual Studio Code中配置GO开发环境 一.GO语言安装 详情查看:GO语言下载.安装.配置 二.GoLang插件介绍 对于Visual Studio Code开发工具,有一款优秀的 ...

  5. windows通过Visual Studio Code中配置GO开发环境(转)

    一.GO语言安装 详情查看:GO语言下载.安装.配置 二.GoLang插件介绍 对于Visual Studio Code开发工具,有一款优秀的GoLang插件,它的主页为:https://github ...

  6. 在Visual Studio Code 中配置Python 中文乱码问题

    在Visual Studio Code 中配置Python 中文乱码问题 方法一:直接代码修改字符集 添加前四行代码 import io import sys #改变标准输出的默认编码 sys.std ...

  7. 【Visual Studio Code 】使用Visual Studio Code + Node.js搭建TypeScript开发环境

    1.准备工作 Node.js Node.js - Official Site Visual Studio Code Visual Studio Code - Official Site 安装Node. ...

  8. 使用Visual Studio Code + Node.js搭建TypeScript开发环境

    Visual Studio Code搭建Typescript开发环境 —— 相关文章: http://www.cnblogs.com/sunjie9606/p/5945540.html [注意:这里仅 ...

  9. Ubuntu下Visual Studio Code的配置

    最近在Ubuntu系统里用Visual Studio Code编写vue代码时,在build的时候老是报错,后来发现原来Visual Studio Code里默认Tab是4个空格,而vue代码要求ta ...

随机推荐

  1. kafka零数据丢失的配置方案

    讨论一下kafka参数的配置 1.acks 参数配置 acks这个参数有三个值:0,1,-1,但是不用的参数对应的含义不同,那如果我们想要保证数据不丢失,acks 值应该设置为哪个参数呢? 0:代表生 ...

  2. react的每个方法为什么一定要bind this

    一开始学习react的时候就了解了react的每个方法都要bind(this)或者使用箭头函数绑定this的指向,到底是为什么要这么写呢,当时要学习的东西太多了就没在意,今天特别好奇(不搞懂不吃饭的态 ...

  3. SpringBoot应用中使用AOP记录接口访问日志

    SpringBoot应用中使用AOP记录接口访问日志 本文主要讲述AOP在mall项目中的应用,通过在controller层建一个切面来实现接口访问的统一日志记录. AOP AOP为Aspect Or ...

  4. Data Leakage in Machine Learning 机器学习训练中的数据泄漏

    refer to:  https://www.kaggle.com/dansbecker/data-leakage There are two main types of leakage: Leaky ...

  5. TCP连接中的状态

    1. 正常状态转换 我们用图 3-13 来显示在正常的 TCP 连接的建立与终止过程中,客户与服务器所经历的不同状态.读者可以对照图 3-12 来阅读,使用图 3-12 的状态图来跟踪图 3-13 的 ...

  6. 记一次 .NET 某机械臂智能机器人控制系统MRS CPU爆高分析

    一:背景 1. 讲故事 这是6月中旬一位朋友加wx求助dump的故事,他的程序 cpu爆高UI卡死,问如何解决,截图如下: 在拿到这个dump后,我发现这是一个关于机械臂的MRS程序,哈哈,在机械臂这 ...

  7. 灵魂画手:漫画图解 SSH

    OpenSSL 本身是一个软件库,这个软件被广泛的应用在系统服务器当中,他的主要功能是在网络通信的过程中,保证数据的一致性以及数据传输过程中的安全性.软件本身是由C语言编写,这使得他具备了跨平台的特性 ...

  8. MySQL——InnoDB事务

    事务:全部成功 或 全部失败! ------------------------------------------------------------------------------------ ...

  9. 【曹工杂谈】Maven底层容器Plexus Container的前世今生,一代芳华终落幕

    Maven底层容器Plexus Container的前世今生,一代芳华终落幕 前言 说实话,我非常地纠结,大家平时只是用Maven,对于内部的实现其实也不关心,我现在非要拉着大家给大家讲.这就有个问题 ...

  10. C# List集合类常用操作 (一)

    所有操作基于以下类 class Employees { public int Id { get; set; } public string Name { get; set; } public stri ...