前段时间好像自己的环境不小心删掉了,只要代码涉及到STL的东西就会出问题,借此机会把vscode换到了最新版本,同时也配置了一遍C、C++环境。并且个人觉得很多博主写的有关vscode配置C、C++环境的文章真的很驳杂,并且很多过程不必要,实在不必这么麻烦,这也是为什么不懂的东西最好查API,因为API解释得简洁明了。
首先给一下官方给的配置方法:vscode配置C、C++环境
里面是全英文描述的,如果看不懂的话可以用谷歌浏览器进去之后右键翻译成中文,个人觉得还是完全可以理解的,下面大致流程如下,温馨提示:不需要复制任何配置文件!!!不需要复制任何配置文件!!!不需要复制任何配置文件!!!
主要流程
1. 安装vscode,直接戳此处去官网下载最新可用的vscode版本即可,这个很简单就不必多说。
2. 安装vscode的C / C ++扩展,扩展就是侧边栏最下面一个Extensions,或者使用快捷键Ctrl + Shift + X
打开。
3. 通过SourceForge网站安装mingw64,点击此处跳转到资源页面。
这里选择Files,然后我们滑动到最底端可以看到mingw64的各个版本,此处当然选择最新版了,如图找到x86_64-posix-seh
点击下载。
下载完之后最好就解压到C盘,我们最后得到的其实就是一个mingw64文件
4. 接下来就配置环境变量,进入高级系统设置,然后进入环境变量,找到系统变量中的path
双击path编辑环境变量,点击右上角新建,将gcc.exe所在位置放进去就行了,我这里是C:\mingw64\bin
具体位置就看你自己的这个应用程序放在什么位置,把位置copy一下放进去就好了,好了之后就一层一层点确定,要点三次确定,那就好了,如果不放心,win+r输入cmd在里面逐条输入以下指令:
g++ --version
gdb --version
如果你看到符合你所下载版本的一个输出就证明环境变量已经配置好了,我这里执行g++ --verison
运行结果如下。
5. 接下来随便在计算机的任何一个位置创建一个文件夹用vscode打开它,然后点击New file我们简单创建一个helloworld.cpp
源文件
然后可以自己写个简单代码,或者直接copy官方的代码进去(官方代码如下)
#include <iostream>
#include <vector>
#include <string>
using namespace std;
int main()
{
vector<string> msg {"Hello", "C++", "World", "from", "VS Code", "and the C++ extension!"};
for (const string& word : msg)
{
cout << word << " ";
}
cout << endl;
}
按Ctrl + S
保存文件,你还可以通过选中“ 文件 ”主菜单中的“ 自动保存”,启用“ 自动保存”以自动保存文件更改,英文版本就是file -->Auto Save,这个功能还是非常舒服的。然后接下来就是高能部分了,没有任何copy,按照步骤来,轻松配好环境。
6.创建一个tasks.json
文件来告vscode如何编译程序。该任务将调用g ++编译器以基于源代码创建可执行文件
从主菜单中,选择Terminal --> Configure Default Build Task。在下拉列表中,将显示任务下拉列表,其中列出了C ++编译器的各种预定义构建任务。选择g ++.exe构建活动文件,它将构建当前在编辑器中显示的文件
这将在.vscode
文件夹中创建一个文件tasks.json
,然后在编辑器中将其打开,它自己就已经生成好了内容了,应该和以下这个差不多,你完全不需要copy,它生成了这个文件就已经ok了,此处只是用于做一个参照。
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "cpp.exe build active file",
"command": "C:\\mingw64\\bin\\cpp.exe",
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
"options": {
"cwd": "C:\\mingw64\\bin"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
回到helloworld.cpp
源文件中,此时构建helloworld.cpp
。
运行构建任务tasks.json,按快捷键Ctrl + Shift + B
或点击Terminal
然后选择Run Build Task
。
任务完成后,终端将显示编译器的输出,指示构建成功还是失败。对于成功的g ++构建,输出看起来大概这样:
7.创建一个launch.json
文件,以配置vscode以在按F5
调试程序时启动GDB调试器。从主菜单中,选择“运行” >“ 添加配置…”,然后选择“ C ++(GDB / LLDB)”,英文版本为Run --> Add Configuration
然后选择C++ (GDB/LLDB)
,此处选择g ++.exe构建并调试活动文件
vscode会创建一个launch.json文件,此处需要多等几秒,在编辑器中将其打开,大致长这样,再次提醒,这里也不需要copy
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "g++.exe - 生成和调试活动文件",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "C:\\mingw64\\bin\\gdb.exe",
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "g++.exe build active file"
}
]
}
然后就完全可以写代码,随便畅玩C++了,不过这里再讲一个比较有用的配置。
8.如果要进一步控制C / C ++扩展,可以创建一个c_cpp_properties.json
文件,该文件允许你更改设置,例如编译器的路径,包含路径,C ++标准(默认为C ++ 17)等。
使用快捷键Ctrl + Shift + P
然后点击C/C++: Edit Configurations (UI)
此时就打开了C/C++配置页面,当你在此处进行更改时,vscode会将其写入到文件夹中称为c_cpp_properties.json
的.vscode
文件中,比如说这里可以设置一下采用什么那个哪个C++标准等等,具体就不多说,自己仔细研究
总的来说,我们的vscode的C、C++就已经搭建好了,可以随意编译、运行、调试,注意调试不支持中文文件名,要调试需要程序名不能为中文且所在的各级目录均为全英文
此方法不需要自己手动去copy并且配置任何配置文件,简单方便还省力,觉得可以的话点个赞呗
如有任何问题,欢迎下方评论交流