VSCode编译文件夹下所有C/C++文件的配置指南
创作时间:
作者:
@小白创作中心
VSCode编译文件夹下所有C/C++文件的配置指南
引用
CSDN
1.
https://blog.csdn.net/qq_37701948/article/details/139444127
本文介绍如何在VSCode中配置编译文件夹下所有C/C++文件的环境,包括所需插件和相关.json文件的配置。
必备插件
以下五个插件是必备的:
Code Runner:可以在写完一个
.c
或.cpp
文件后,按下Ctrl + Alt + N
快捷键快速编译运行单个文件。这个快捷键可以更改。C/C++ Compiler:如果不用Code Runner,也可以使用这个插件进行编译。
.json文件配置
这里的.json文件配置仅供参考,不能适用于所有工程。大部分情况下还是需要根据自己的项目来进行修改。配置文件中已做部分解释,具体细节可以自行搜索。
1. c_cpp_properties.json
{
"configurations": [
{
"name": "Win64",
"includePath": ["${workspaceFolder}\\**"], // 表明前往工作空间下寻找包含文件
"defines": ["_DEBUG", "UNICODE", "_UNICODE"],
"windowsSdkVersion": "10.0.18362.0",
"compilerPath": "E:\\VSCode\\mingw64\\bin\\g++.exe",
"cStandard": "c17",
"cppStandard": "c++17",
"intelliSenseMode": "gcc-x64"
}
],
"version": 4
}
2. launch.json
{
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
// 需要调试的可执行程序,与 tasks 中的可执行程序的名字需保持一致
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceRoot}",
"environment": [],
// 该选项设置为 false 则使用外部控制台运行程序,程序结束时会立马关闭控制台,需要在末尾加上 system("pause")
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "E:\\VSCode\\mingw64\\bin\\gdb.exe",
"preLaunchTask": "C/C++: g++.exe build active file", // 与 task 中的 label 需要保持一致
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]
}
3. settings.json
{
"files.associations": {
"*.py": "python",
"iostream": "cpp",
"*.tcc": "cpp",
"string": "cpp",
"unordered_map": "cpp",
"vector": "cpp",
"ostream": "cpp",
"new": "cpp",
"typeinfo": "cpp",
"deque": "cpp",
"initializer_list": "cpp",
"iosfwd": "cpp",
"fstream": "cpp",
"sstream": "cpp",
"map": "c",
"stdio.h": "c",
"algorithm": "cpp",
"atomic": "cpp",
"bit": "cpp",
"cctype": "cpp",
"clocale": "cpp",
"cmath": "cpp",
"compare": "cpp",
"concepts": "cpp",
"cstddef": "cpp",
"cstdint": "cpp",
"cstdio": "cpp",
"cstdlib": "cpp",
"cstring": "cpp",
"ctime": "cpp",
"cwchar": "cpp",
"exception": "cpp",
"ios": "cpp",
"istream": "cpp",
"iterator": "cpp",
"limits": "cpp",
"memory": "cpp",
"random": "cpp",
"set": "cpp",
"stack": "cpp",
"stdexcept": "cpp",
"streambuf": "cpp",
"system_error": "cpp",
"tuple": "cpp",
"type_traits": "cpp",
"utility": "cpp",
"xfacet": "cpp",
"xiosbase": "cpp",
"xlocale": "cpp",
"xlocinfo": "cpp",
"xlocnum": "cpp",
"xmemory": "cpp",
"xstddef": "cpp",
"xstring": "cpp",
"xtr1common": "cpp",
"xtree": "cpp",
"xutility": "cpp",
"stdlib.h": "c",
"string.h": "c",
"iomanip": "cpp",
"array": "cpp",
"cstdarg": "cpp",
"cwctype": "cpp",
"memory_resource": "cpp",
"optional": "cpp",
"string_view": "cpp",
"unordered_set": "cpp",
"numeric": "cpp",
"list": "cpp",
"bitset": "cpp",
"chrono": "cpp",
"forward_list": "cpp",
"regex": "cpp",
"valarray": "cpp",
"cfenv": "cpp",
"charconv": "cpp",
"cinttypes": "cpp",
"codecvt": "cpp",
"complex": "cpp",
"condition_variable": "cpp",
"csetjmp": "cpp",
"csignal": "cpp",
"cuchar": "cpp",
"functional": "cpp",
"ratio": "cpp",
"future": "cpp",
"mutex": "cpp",
"scoped_allocator": "cpp",
"shared_mutex": "cpp",
"thread": "cpp",
"typeindex": "cpp",
"queue": "cpp",
"numbers": "cpp"
},
"editor.suggest.snippetsPreventQuickSuggestions": false,
"aiXcoder.showTrayIcon": true,
"cmake.outputLogEncoding": "auto",
"C_Cpp.errorSquiggles": "disabled"
}
4. tasks.json
{
"version": "2.0.0",
"tasks": [
{
"type": "cppbuild", //任务执行的是shell命令
"label": "C/C++: g++.exe build active file",
"command": "E:\\VSCode\\mingw64\\bin\\g++.exe", //和launch.josn 中的 preLaunchTask 必须一样
"args": [
"-fdiagnostics-color=always", // 总是输出颜色代码,即便是在伪终端下
"-g",
//"${file}", // 编译当前打开(编辑)的 .cpp 文件
"${fileDirname}\\*.cpp", // 编译当前打开的文件所在目录下的所有 .cpp 文件
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe", // 生成的可执行程序的名字
],
"options": {
"cwd": "E:\\VSCode\\mingw64\\bin"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "Task generated by Debugger."
}
]
}
如何运行
- 新建一个文件夹
TEST
,右键用VSCode打开。 - 在
TEST
文件夹中新建.vscode
文件夹,将上述四个.json文件放进去。 - 在VSCode中,创建
code
文件夹,创建func.cpp
、func.h
和main.cpp
这三个文件。
注意:C++中自定义的头文件一定要用双引号括起来,而不是尖括号,否则编译器会前往库文件中寻找头文件,找不到就会报“func.h: No such file or directory”的错误。
- 点击上方工具栏中的
Run->Run Without Debugging
。 - 点击后会出现下面这个,点击红框中所示的选项。
- 最后就能成功运行了。
热门推荐
管理干部角色的认知和职责
五台山位置:山西忻州五台县,华北屋脊上的佛教圣地
走进五台山风景名胜区(山西)
高性能橡胶的高端“朋友圈”
新年听“嗷呜”——雪豹的语言能力(下篇)
一日之计在于晨,这3种营养健康的早餐搭配,美味又能补充能量
香港跨境电商注册全攻略:优势、流程与实操细节解析
头屑反复可能是身体报警!这6类食物吃着吃着就告别头皮雪崩
财富自由分为10大等级,你在哪一等级?
最新专业分包合同样式:法律实务中的核心要素与合规指引
办公室布局与动线规划:如何提升团队协作效率?
梦见办公室重新布局的深层含义
种植茼蒿的最佳时间及方法
主板、创业板与新三板对比
老年人,如何接入智能时代?
如何计算储采比?这种计算对资源管理有何意义?
午休时间多久合适?专家建议20-30分钟最佳
事假请假理由应该包含哪些关键要素
王者荣耀2v2最强组合推荐
打工族如何利用业余时间增加收入?推荐十个夜间兼职
税局官方总结查验发票真伪的方法
主食吃多少,和寿命长短有关?
取消全铝底盘,预售价36.8万,问界M8比起问界M9更值得买吗?
鱼肝油能护肝吗?
睡觉时心跳很重睡不着怎么回事
一紧张就胸闷气短心慌是怎么回事
冠心病心率过快怎么治疗
远眺天涯,心怀浩瀚:解读“暮霭沉沉楚天阔”的深层意蕴
让5美元升值100倍:斯坦福脑洞大开的课程
“微信聊天记录”也能成为证据吗?只需了解这几点→