1.下载vscode

官网下载地址:

https://code.visualstudio.com/

安装时选择把软件加入到环境变量中这个选项

2.打开vscode,安装c/c++扩展插件

3.下载gcc和clang编译器

下载地址:

https://winlibs.com/

下载后解压,把bin文件夹所在的路径加入到环境变量中

加环境变量的方法:在程序栏输入envir->编辑系统环境变量,在系统环境的path变量中加入复制的文件夹路径

查看编译器是否安装成功:在程序栏搜索powershell,打开windows powershell,键入

g++ --version

clang++ --version

如果显示版本号即证明安装成功

4.在vscode中编辑tasks.json配置文件

先编写一个main.cpp文件

#include <iostream>

consteval int get_value(){
return 3;
} int main(){
constexpr int value = get_value();
std::cout << "value : " << value << std::endl;
return 0;
}

选择Terminal->Configure tasks...->g++. exe build active file(如果没有这个选项需要重启一下vs code)

再次选择Terminal->Configure tasks...->clang++. exe build active file,这个会在原本的tasks.json文件夹内加入另外一段clang++编译用的代码

这样会自动生成一个.vscode文件夹下的一个tasks.json文件,更改两个"args":[]内的内容为:

				"-g",
"-std=c++20",
"${workspaceFolder}\\*.cpp",
"-o",
"${fileDirname}\\rooster.exe"

这里规定了编译使用的C++标准版本,要编译的文件是该文件夹内的.cpp文件后缀,以及输出的可执行文件的名称为rooster.exe

tasks.json文件总览:

{
"version": "2.0.0",
"tasks": [
{
"type": "cppbuild",
"label": "Build with GCC",
"command": "C:\\ZSP\\Software\\mingw64\\bin\\g++.exe",
"args": [
"-g",
"-std=c++20",
"${workspaceFolder}\\*.cpp",
"-o",
"${fileDirname}\\rooster.exe"
],
"options": {
"cwd": "${fileDirname}"
},
"problemMatcher": [
"$gcc"
],
"group": "build",
"detail": "compiler: C:\\ZSP\\Software\\mingw64\\bin\\g++.exe"
},
{
"type": "cppbuild",
"label": "Build with Clang",
"command": "C:\\ZSP\\Software\\mingw64\\bin\\clang++.exe",
"args": [
"-g",
"-std=c++20",
"${workspaceFolder}\\*.cpp",
"-o",
"${fileDirname}\\rooster.exe"
],
"options": {
"cwd": "${fileDirname}"
},
"problemMatcher": [
"$gcc"
],
"group": "build",
"detail": "compiler: C:\\ZSP\\Software\\mingw64\\bin\\clang++.exe"
}
]
}

label命名了编译选项中的名称,在编译程序的时候可以选择g++或者是clang++编译

5.编译程序:

选中.cpp文件->Terminal->Run Task...->Build with GCC或者Build with Clang

之后会生成一个名为rooster.exe的二进制文件并显示编译成功:

6.运行程序

选择Terminal->New Terminal(快捷键ctrl+shift+`)->.\rooster.exe,可以看到程序的运行结果:value : 3

7.配置C/C++文件

我们发现main代码中有一行自动标红,这种情况可以通过修改编辑器的配置文件来解决(这里是因为C/C++的标准问题)

View->Command platte->C/C++:Edit Configuration(UI)

拉到最下面修改C++ Standard为C++ 20,标红就会消失

C++学习笔记一:windows系统配置C++开发环境(VS code+g++/clang++)的更多相关文章

  1. angular学习笔记(2)- 前端开发环境

    angular1学习笔记(2)- 前端开发环境 1.代码编辑工具 2.断点调试工具 3.版本管理工具 4.代码合并和混淆工具 5.依赖管理工具 6.单元测试工具 7.集成测试工具 常见的前端开发工具 ...

  2. 【转】Pro Android学习笔记(二):开发环境:基础概念、连接真实设备、生命周期

    在Android学习笔记(二):安装环境中已经有相应的内容.看看何为新.这是在source网站上的Android架构图,和标准图没有区别,只是这张图颜色好看多了,录之.本笔记主要讲述Android开发 ...

  3. Android学习笔记(三)Android开发环境的搭建

    一.配置JAVA环境 二.配置Android开发环境 可以安装adt-bundle-windows,该压缩包一般自带Eclipse.或者安装Android Studio,要注意SDK的版本是否符合要求 ...

  4. Spark学习笔记--安装SCALA和IDEA开发环境

    一:安装Scala

  5. Android学习笔记(一)——安卓开发环境搭建

    安装教程以及资源(2015.11.8最新版):链接:http://pan.baidu.com/s/1kTnOsMr 密码:0ogf

  6. Android学习笔记01-Mac下搭建Java开发环境

    一 安装JDK 下载 mac 下专用的jdk1.7, 下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downlo ...

  7. PHP学习笔记----IIS7下安装配置php环境

    原文:PHP学习笔记----IIS7下安装配置php环境 Php如何安装 Php版本的选择 Php在windows下的(php5.4.7)有两种版本: VC9 x86 Non Thread Safe ...

  8. 【Objective-C】Windows下Objective-C开发环境配置

    [Objective-C]Windows下Objective-C开发环境配置 ftp://ftpmain.gnustep.org/pub/gnustep/binaries/windows/   最近打 ...

  9. Android菜鸟的成长笔记(1)——Android开发环境搭建从入门到精通

    原文:Android菜鸟的成长笔记(1)--Android开发环境搭建从入门到精通 今天在博客中看到好多Android的初学者对Android的开发环境的搭建不熟悉而导致不能进行学习,所以我决定自己写 ...

  10. Metabase在Windows下的开发环境配置

    Metabase在Windows下的开发环境配置 */--> pre.src {background-color: #292b2e; color: #b2b2b2;} Metabase在Wind ...

随机推荐

  1. 【日常踩坑】解决 pip 安装第三方包时因 SSL 报错

    目录 踩坑 什么是 SSL ? 为什么会报错 解决办法 1. 临时关闭代理.VPN 或者网络抓包等软件 2. 通过镜像的 HTTP 源来避免 SSL 认证问题 3. 切换至低版本 pip 参考资料 踩 ...

  2. 《SQL与数据库基础》09. 事务

    @ 目录 事务 简介 操作 方式一 方式二 四大特性(ACID) 并发事务问题 事务隔离级别 本文以 MySQL 为例 事务 简介 事务是一组操作的集合,它是一个不可分割的工作单位.事务会把所有的操作 ...

  3. Unity 游戏开发、01 基础篇 | 阿发入门篇全课程学习笔记

    Unity Documentation .全课程视频 .第15,24章视频 afanihao Unity入门,全课程内容个人学习笔记,简单部分一笔带过,重点内容带 2.3 窗口布局 Unity默认窗口 ...

  4. 使用GPU训练Pytorch模型

    如何使用GPU训练Pytorch模型 这两天的深度学习实验真实让人头疼,传说中的"猫狗大战",对模型的训练用CPU的话9h起步,12h是常态,大学生哪耗得起,因此查找资料搭建了GP ...

  5. PLC通过Modbus转Profinet网关连接变频器控制电机案例

    在本案例中,通过使用Modbus转Profinet网关(XD-MDPN100),PLC可以通过Profinet协议与变频器进行通信和控制.这样,PLC可以实现对电机的转速调节.启停控制等功能. 同时, ...

  6. Fireboom on Sealos:半小时搞定一个月的接口工作

    后端日常开发工作中有 88% 的接口都是 CURD,占用了超过 6 成开发时间.这些工作枯燥乏味,且价值低下,不仅荒废了时间,还无法获得任何成就感.而 Fireboom 可在 2 分钟内,完成传统模式 ...

  7. 用MMCls训练手势模型

    import os import json import mmcv import time from mmcv import Config from mmdet.apis import inferen ...

  8. 使用Arduino制作摩尔斯电码收发器

    摩尔斯电码通过不同的排列顺序来表达不同的英文字母.数字和标点符号等.在今天,国际摩尔斯电码依然被使用着.比如,摩尔斯电码最广为人知的用法发送求救信号SOS,SOS信号的组合方式为:.再比如,假设我们通 ...

  9. 造轮子之EventBus

    前面基础管理的功能基本开发完了,接下来我们来优化一下开发功能,来添加EventBus功能.EventBus也是我们使用场景非常广的东西.这里我会实现一个本地的EventBus以及分布式的EventBu ...

  10. [NOI2014] 字符串(题解)

    字符串(题解) 题目描述 近日,园长发现动物园中好吃懒做的动物越来越多了.例如企鹅,只会卖萌向游客要吃的.为了整治动物园的不良风气,让动物们凭自己的真才实学向游客要吃的,园长决定开设算法班,让动物们学 ...