VSCode配置C/C++(使用MSVC)步骤,极简版!
VSCode配置C/C++环境一般使用MinGW或者MSVC,本人对两者都进行了尝试。配置MinGW较为简单,网上教程也很丰富。配置MSVC较为复杂而且教程较少,坑比较多。但是(个人感觉,辣鸡gdb调试时,文件名不支持中文,不支持含空格)MSVC更加好用,功能更完善,推荐安装MSVC。
一、需要
- 安装好VSCode
- 安装好Visual Studio(工作负载包括C++开发)
- VScode安装C/C++插件
插件(extension)->C/C++,安装即可
*二、配置
*配置内容主要是两个json文件:tasks.json与launch.json,
首先使用VSCode打开任意一个文件夹(本文接下来的操作只是创建一个.vscode子文件夹,与当前文件夹其他内容无关)
- 配置tasks.json:
VSCode任务栏——> 终端(Terminal)——>配置任务(Configure Tasks)——>使用模板创建task.json文件;(若有其他选项任选一项即可)。
- 配置launch.json:
VSCode任务栏——>调试(Debug)——>打开配置(Open Configurations)——>C++(GDB/LLDB);(若有其他选项任选一项即可).。
-
划重点:以上操作 具体选项无影响只要得到一个.vscode文件夹,其中包括tasks.json和launch.json即可。
其实VSCode相关的操作已经结束了,task.json与launch.json的内容全部复制我的就好了(其中包括配置MinGW与MSVC,关于MinGW部分内容可供参考)。没错到这里就结束了!就是这么简单!!!????
tasks.json:
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{//MSVC
"type": "shell",
"label": "cl.exe build active file",
"command": "cl.exe",
"args": [
"/Zi",
"/EHsc",
"/Fe:",
"${fileDirname}\\${fileBasenameNoExtension}.exe",
"${file}"
],
"problemMatcher": [
"$msCompile"
],
"group": {
"kind": "build",
"isDefault": true
}
},
{//g++
"type": "shell",
"label": "g++.exe build active file",
"command": "D:\\MinGW\\bin\\${fileBasenameNoExtension}-g++.exe",
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}\\a.exe"
],
"options": {
"cwd": "D:\\MinGW\\bin"//你的MinGW/bin路径
},
"problemMatcher": [
"$gcc"
],
"group": "build"
}
]
}
launch.json:
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{//MSVC
"name": "cl.exe build and debug active file",
"type": "cppvsdbg",
"request": "launch",
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"preLaunchTask": "cl.exe build active file"
},
{//g++
"name": "g++.exe build and debug active file",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}\\${fileBasenameNoExtension}-g++.exe",
"args": [],
"stopAtEntry": true,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "D:\\MinGW\\bin\\gdb.exe", //你的gdb.exe路径
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "g++.exe build active file"
},
]
}
**三、实现编译与调试
现在把./vscode子文件夹(包括其中的tasks.json与launch.json)复制到你的源代码所在文件夹。
或者就在当前文件夹创建源代码文件。然后打开源代码文件按F5.(这就是编译调试方法。)
可以编译了吗?不能吧,不能就对了。:)
如果显示无法找到cl.exe或者相关头文件和库,可以有以下两种办法。
1.简单方法(无需配置环境变量):
a. 找到Visual Studio开发者工具(win+s搜索developer Command Prompt for VS 2019或者其他版本)
b.在开发者工具打开当前文件夹。
c.进入当前文件夹后使用命令行打开VSCode(code .)
d.再次调试(F5),
以上具体步骤可以参考博客:
https://blog.csdn.net/qq_38981614/article/details/99629597
若无问题说明以上步骤均完成。
2.使用方法1每次都需要从开发者工具打开VSCode,不实用。还有添加环境变量方法。
a.打开cmd,输入where cl(win+R,输入cmd,不需要打开开发者工具)。
若无路径需要添加编译器路径,在环境变量——>系统环境变量——>PATH中添加cl.exe所在目录路径:可供参考:“{VS安装路径\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\bin\Hostx64\x64}”
b.再次测试编译调试源代码,如显示头文件或库文件找不到,
环境变量——>用户变量——>添加INCLUDE环境变量(包括编译器cl.exe所在include文件夹路径,windows kits所需的include路径),添加LIB环境变量(包括编译器cl.exe所在lib文件夹路径,windows kits所需的lib路径)
因为相关路径较多,可以参考以下博客进行添加:
https://blog.csdn.net/weixin_41115751/article/details/89817123
https://jingyan.baidu.com/article/1876c85223be3b890b13769c.html
c.再次编译调试即可。
如果出现问题,可以分为编译器cl.exe的问题和链接库路径的问题(环境变量INCLUDE和LIB)。编译器的问题请检查MSVC版本及其路径(避免多个版本多个编译器路径)。链接库路径的问题请检查环境变量路径与编译器版本是否一致,是否是当前windows系统的windows kits所在路径。
**四、建议
踩坑无数终于可以用VSCode刷leetcode题并且进行调试了,比Visual Studio方便很多。使用MinGW配置C/C++环境更简单,安装好MinGW修改task.json与launch.json相应路径即可(添加环境变量可简化路径)。但是gdb不支持文件名中文与空格真没法解决。
建议在VSCode上:
1.安装C/C++ Themes,选择自己喜欢的主题风格
2.使用MSVC编译C++会有很多.obj,.pdb,.ilk文件,建议屏蔽
设置(ctrl+,)——>Files:Exclude——>添加模式."**/*.obj"等
3.安装code Runner
3.安装leetcode开始刷题:)
上一篇: 当一家人开始减肥