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,标红就会消失标签:exe,++,tasks,clang,++.,C++ From: https://www.cnblogs.com/zspaiprogram/p/17891340.html