C++学习笔记一:windows系统配置C++开发环境(VS code+g++/clang++)
1.下载vscode
官网下载地址:
https://code.visualstudio.com/
安装时选择把软件加入到环境变量中这个选项
2.打开vscode,安装c/c++扩展插件

3.下载gcc和clang编译器
下载地址:

下载后解压,把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++)的更多相关文章
- angular学习笔记(2)- 前端开发环境
angular1学习笔记(2)- 前端开发环境 1.代码编辑工具 2.断点调试工具 3.版本管理工具 4.代码合并和混淆工具 5.依赖管理工具 6.单元测试工具 7.集成测试工具 常见的前端开发工具 ...
- 【转】Pro Android学习笔记(二):开发环境:基础概念、连接真实设备、生命周期
在Android学习笔记(二):安装环境中已经有相应的内容.看看何为新.这是在source网站上的Android架构图,和标准图没有区别,只是这张图颜色好看多了,录之.本笔记主要讲述Android开发 ...
- Android学习笔记(三)Android开发环境的搭建
一.配置JAVA环境 二.配置Android开发环境 可以安装adt-bundle-windows,该压缩包一般自带Eclipse.或者安装Android Studio,要注意SDK的版本是否符合要求 ...
- Spark学习笔记--安装SCALA和IDEA开发环境
一:安装Scala
- Android学习笔记(一)——安卓开发环境搭建
安装教程以及资源(2015.11.8最新版):链接:http://pan.baidu.com/s/1kTnOsMr 密码:0ogf
- Android学习笔记01-Mac下搭建Java开发环境
一 安装JDK 下载 mac 下专用的jdk1.7, 下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downlo ...
- PHP学习笔记----IIS7下安装配置php环境
原文:PHP学习笔记----IIS7下安装配置php环境 Php如何安装 Php版本的选择 Php在windows下的(php5.4.7)有两种版本: VC9 x86 Non Thread Safe ...
- 【Objective-C】Windows下Objective-C开发环境配置
[Objective-C]Windows下Objective-C开发环境配置 ftp://ftpmain.gnustep.org/pub/gnustep/binaries/windows/ 最近打 ...
- Android菜鸟的成长笔记(1)——Android开发环境搭建从入门到精通
原文:Android菜鸟的成长笔记(1)--Android开发环境搭建从入门到精通 今天在博客中看到好多Android的初学者对Android的开发环境的搭建不熟悉而导致不能进行学习,所以我决定自己写 ...
- Metabase在Windows下的开发环境配置
Metabase在Windows下的开发环境配置 */--> pre.src {background-color: #292b2e; color: #b2b2b2;} Metabase在Wind ...
随机推荐
- Jmeter MD5加密及其运用
常用的几种加密方式 内置函数__MD5加密 参数说明: String to calculate MD5 hash(必填):要加密的字符串 Name of variable in which to st ...
- .NET Core WebAPI 基础 文件上传
昨天分享了一个在WebApi中如何接收参数的文章 .NET API 中的 FromRoute.FromQuery.FromBody 用法 - 一事冇诚 - 博客园 (cnblogs.com),然后有新 ...
- elasticsearch wildcard 慢查询原因分析(深入到源码!!!)
大家好,我是蓝胖子,前段时间线上elasticsearch集群遇到多次wildcard产生的性能问题, elasticsearch wildcard 一直是容易引发elasticsearch 容易宕机 ...
- xv6 中的进程切换:MIT6.s081/6.828 lectrue11:Scheduling 以及 Lab6 Thread 心得
絮絮叨 这两节主要介绍 xv6 中的线程切换,首先预警说明,这节课程的容量和第 5/6 节:进程的用户态到内核态的切换一样,细节多到爆炸,连我自己复习时都有点懵,看来以后不能偷懒了,学完课程之后要马上 ...
- Python 潮流周刊#21:如何提升及测量 Python 代码的性能?
你好,我是猫哥.这里每周分享优质的 Python.AI 及通用技术内容,大部分为英文.标题取自其中三则分享,不代表全部内容都是该主题,特此声明. 本周刊由 Python猫 出品,精心筛选国内外的 25 ...
- Springboot简单功能示例-1 实现基本WEB服务
springboot-sample 介绍 springboot简单示例 跳转到发行版 查看发行版说明 软件架构(当前发行版使用) springboot 安装教程 git clone --branch ...
- 【matplotlib 实战】--堆叠面积图
堆叠面积图和面积图都是用于展示数据随时间变化趋势的统计图表,但它们的特点有所不同.面积图的特点在于它能够直观地展示数量之间的关系,而且不需要标注数据点,可以轻松地观察数据的变化趋势.而堆叠面积图则更适 ...
- Python面试题——面向对象题
1.简述面向对象的三大特性. 封装: 封装指的是把一堆数据属性与方法数据放在一个容器中,这个容器就是对象.让对象可以通过 "." 来调用对象中的数据属性与方法属性. 继承: 继承指 ...
- MySQL数据库操作 Lab1
实验一 MySQL数据库操作 实验目的: 掌握MySQL安装.配置与登录方法,使用MySQL客户创建数据库及对数据库表完成各种操作 实验内容: 1. 安装MySQL数据库管理系统, ...
- Python - 中文文本进行余弦相似度比较
今天,在看论文的时候,突然想到了一件事情,爱是相对的,是双方的事情.那么"你爱我"和"你爱我"的相似度是多少呢?采用余弦相似度的方式来进行相似度比较.首先&qu ...