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. Redis系列20:LFU内存淘汰算法分析

    Redis系列1:深刻理解高性能Redis的本质 Redis系列2:数据持久化提高可用性 Redis系列3:高可用之主从架构 Redis系列4:高可用之Sentinel(哨兵模式) Redis系列5: ...

  2. 在.NET Framework中使用RocketMQ(阿里云版)实战【第二章】

    章节 第一章:https://www.cnblogs.com/kimiliucn/p/17662052.html 第二章:https://www.cnblogs.com/kimiliucn/p/176 ...

  3. Azure Data Factory(七)数据集验证之用户托管凭证

    一,引言 上一篇文章中,我们讲解了 Azure Data Factory 在设置数据集类型为  Dataverse 的时候,如何连接测试.今天我们继续讲解认证方式这一块内容,打开 Link Servi ...

  4. 上位机使用JS SerialPort进行串口通信, 包含开发环境搭建和完整示例代码

    在嵌入式开发中,我们经常需要使用上位机(PC)与一些电路模块进行通信, 用于获取一些传感器的数据,或者发送命令控制相应的电路模块.NodeJS目前支持使用SerialPort模块进行串口通信,本文主要 ...

  5. Unity 游戏开发、03 基础篇 | C#初级编程

    C#初级编程 https://learn.u3d.cn/tutorial/beginner-gameplay-scripting 8 Update 和 FixedUpdate Update(不是按固定 ...

  6. dedebiz 清理冗余废弃未引用图片方法

    原理描述: 在原有织梦后台菜单中增加"清理冗余图片按钮",实现清理冗余图片的功能. 操作步骤: 1. 打开后台admin\sys_sql_query.php代码 在该文件中搜索如下 ...

  7. 查看docker容器使用的cpu和内存

    转载请注明出处: 使用docker ps命令列出正在运行的Docker容器,并获取目标容器的ID或名称. 使用docker stats <容器ID或名称>命令来实时监测指定容器的资源使用情 ...

  8. 整理DB2左补零,右补零的方法

    在项目中经常遇到需要左补零,右补零的情况,在DB2实验环境中展示 1.左补零(1)数字左补零,数字长度不定用right(digits(cast(expression as bigint)),NUM)能 ...

  9. linux常用命令(六)

    用于查找系统文件的相关命令 grep find locate grep:查找文件中符号条件的字符串(关键词) 命令语法:grep [选项] 查找模式 [文件名] 选项 选项含义 -E 模式是一个可扩展 ...

  10. Skywalking APM监控系列(二、Mysql、Linux服务器与前端JS接入Skywalking监听)

    前言 上篇我们介绍了Skywalking的基本概念与如何接入.Net Core项目,感兴趣可以去看看: Skywalking APM监控系列(一丶.NET5.0+接入Skywalking监听) 本篇我 ...