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 ...
随机推荐
- 「atcoder - agc054c」Roughly Sorted
link. 高妙题,我只会到构造下界那一步-- 构造下界比较容易,只需要注意到交换一次最多让序列向合法迫近一步即可.则答案下界为 \(\sum_i \max\{\left(\sum_{j < i ...
- Couchdb-权限绕过--命令执行--(CVE-2017-12635)&&(CVE-2017-12636)--H2database命令执行--(CVE-2022-23221)
Couchdb-权限绕过--命令执行--(CVE-2017-12635)&&(CVE-2017-12636)--H2database命令执行--(CVE-2022-23221) 环境概 ...
- 整理DB2左补零,右补零的方法
在项目中经常遇到需要左补零,右补零的情况,在DB2实验环境中展示 1.左补零(1)数字左补零,数字长度不定用right(digits(cast(expression as bigint)),NUM)能 ...
- VScodeSSH免密登录服务器
参考:配置vscode 远程开发+ 免密登录 背景 我想要让VScode实现SSH免密登录服务器,那么就需要使用ssh keygen 生成的公私钥对,公钥id_rsa.pub放在服务器上,私钥id_r ...
- Python常用模块-20个常用模块总结
目录 time模块 datetime模块 random 模块 os 模块 sys 模块 json 和 pickle 模块 hashlib和hmac 模块 logging 模块 numpy 模块 pan ...
- 报Bug的礼仪
不要对1个程序员说:你的代码有Bug.他的第1反应是:1.你的环境有问题吧:2.傻逼你会用吗? 如果你委婉的说:你这个程序和预期的有点不1致,你看看是不是我的打开姿势有问题?他本能的会想:擦,是不是出 ...
- P6346 [CCO2017] 专业网络 & CF1251E1 Voting(Easy Version)
analysis 这个题目我们可以考虑用贪心来做. 我们不难看出来,这个题目是要让我们推出这么个结论:花小钱,办大人. 整体贪心的思路就出来了,然后就是实现部分. 因为我们认识的人随便是谁都可以.所以 ...
- Dash 2.14版本开始支持动态回调注册!
本文示例代码已上传至我的Github仓库https://github.com/CNFeffery/dash-master 大家好我是费老师,就在昨晚,Dash框架发布了其2.14.0新版本,新增的功能 ...
- TopCoder 15903 EllysNim
TopCoder 15903 EllysNim(https://vjudge.net/problem/TopCoder-15903) \(n\)看似有点东西,实际上就只是一个贪心... 设\(i\)表 ...
- Sentinel源码改造,实现Nacos双向通信!
Sentinel Dashboard(控制台)默认情况下,只能将配置规则保存到内存中,这样就会导致 Sentinel Dashboard 重启后配置规则丢失的情况,因此我们需要将规则保存到某种数据源中 ...