记录一下VScode环境配置过程,以免以后配置的时候又浪费时间。
这是我第二次配置环境,虽然配置过程忘得差不多了,但根据b站up主的视频和知乎帖子很快配好了。
知乎链接:VSCode配置C/C++环境 - 知乎 (zhihu.com)
b站链接:【教程】VScode中配置C语言/C++运行环境_哔哩哔哩_bilibili
主要有几个步骤
1、下载VScode,下载C/C++扩展以及诸如汉化包之类的插件
2、下载MinGW,MinGW-w64 - for 32 and 64 bit Windows - Browse Files at SourceForge.net
选择下图版本
下好之后解压,并将mingw64的bin目录添加到系统环境变量的Path路径下
重启电脑,打开VScode,将C/C++拓展版本回退到 1.8.4
下载后重启VScode, ctrl+F5之后选择第一个
这里在b站up主的视频里没有报错,但我和很多小伙伴都报错langch.json的问题
这里提供我的langch.json,大家可以复制过去再修改以下路径即可
{
// 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": "(gdb) Launch",
"preLaunchTask": "C/C++: g++.exe 生成活动文件",//调试前执行的任务,就是之前配置的tasks.json中的label字段
"type": "cppdbg",//配置类型,只能为cppdbg
"request": "launch",//请求配置类型,可以为launch(启动)或attach(附加)
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",//调试程序的路径名称
"args": [],//调试传递参数
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,//true显示外置的控制台窗口,false显示内置终端
"MIMode": "gdb",
"miDebuggerPath": "C:\\Program Files\\MinGW\\mingw64\\bin\\gdb.exe",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]
}
需要修改的是"miDebuggerPath",修改为自己的gdb.exe文件路径
另外,"preLaunchTask"需要跟task.json文件的"label"保持一致
下面介绍如何自动生成task.json文件和c_cpp_properties.json文件
(1)配置编译器
接下来配置编译器路径,按快捷键Ctrl+Shift+P调出命令面板,输入C/C++,选择“Edit Configurations(UI)”进入配置。这里配置两个选项: 1、 编译器路径;2、IntelliSense 模式:gcc-x64。
配置完之后会生成 c_cpp_properties.json文件
(2)配置构建任务
接下来,创建一个tasks.json文件来告诉VS Code如何构建(编译)程序。该任务将调用g++编译器基于源代码创建可执行文件。 按快捷键Ctrl+Shift+P调出命令面板,输入tasks,选择“Tasks:Configure Default Build Task”:
再选择“C/C++: g++.exe build active file”
这样就生成了task.json文件,我的task.json文件如下:
{
"version": "2.0.0",
"tasks": [
{
"type": "cppbuild",
"label": "C/C++: g++.exe 生成活动文件",
"command": "C:/Program Files/MinGW/mingw64/bin/g++.exe",
"args": [
"-fdiagnostics-color=always",
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
"options": {
"cwd": "C:/Program Files/MinGW/mingw64/bin"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "编译器: \"C:/Program Files/MinGW/mingw64/bin/g++.exe\""
},
]
}
要保持"label"和langch.json文件的"preLaunchTask"一致
做完这些,就可以成功运行C++程序了