当前位置: 首页 > news >正文

vscode编译文件夹下所有文件的配置(包含插件和 .json 文件)

文章目录

  • 我所使用的插件
  • .json 文件配置
    • 1. c_cpp_properties.json
    • 2. launch.json
    • 3. settings.json
    • 4. tasks.json
  • 如何运行

我所使用的插件

红框中的五个插件是必备的,其中 Code Runner 插件可以在写完一个 .c.cpp 文件后,按下 Crtl + R 快捷键快速编译运行单个文件。不用 Code Runner 也可以使用 C/C++ Complier 插件,如图二所示。
在这里插入图片描述
在这里插入图片描述

.json 文件配置

这里的 json 文件只是作为我个人的配置,仅供参考使用,并不能适用所有工程。而且配置没有一劳永逸,大部分情况下还是需要根据自己的项目来进行修改,我也在文件中做了部分解释,具体的自行 google。

这里附带一下 vscode 中 json 变量的含义,读者可自行前往查看:Variables Reference。

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."}]
}

如何运行

如何安装 vscode 以及如何安装插件我就不赘述了,读者可以自己搜索一下,这里仅介绍如何创建一个新项目。

新建一个文件夹 TEST,右键用 vscode 打开:
在这里插入图片描述
在 TEST 文件夹中新建 .vscode 文件夹,将四个 json 文件放进去(可以自己新建 .json 后缀的文件):在这里插入图片描述
在 vscode 中,创建 code 文件夹,创建 func.cppfunc.hmain.cpp 这三个文件,内容如下。
在这里插入图片描述
要注意,C++ 中自定义的头文件一定要用双引号 "" 括起来,而不是尖括号 <>,否则编译器会前往库文件中寻找头文件,找不到就会报 “func.h: No such file or directory” 的错误。
在这里插入图片描述
点击上方工具栏中的 Run->Run Without Debugging。
在这里插入图片描述
点击后会出现下面这个,点击红框中所示的选项。
在这里插入图片描述
最后就能成功运行了。
在这里插入图片描述

相关文章:

  • 现阶段对于伪造检测的重难点--泛化
  • 【C++PCL】点云处理KD-ICP配准
  • C# 类型系统
  • 异步通知驱动实例
  • 数据可视化---使用matplotlib绘制高级图表(2)
  • MySQL—多表查询(概述、基本实操、分类)
  • 240.搜索二维矩阵
  • 开发指南027-微信支付
  • HR招聘面试测评,测评候选人的语言和表达能力
  • 数字化转型中存在的五大问题:意识、供给、成本、能力、竞争力培育
  • Linux命令locate:快速定位文件与目录
  • IO转换流
  • EasyRecovery数据恢复软件具有哪些功能特点?2025版本啥时候更新
  • 大数据学习问题记录
  • 一文读懂筛选控件设计
  • Bytom交易说明(账户管理模式)
  • CSS3 聊天气泡框以及 inherit、currentColor 关键字
  • es6
  • iOS 系统授权开发
  • k个最大的数及变种小结
  • LeetCode算法系列_0891_子序列宽度之和
  • Protobuf3语言指南
  • 从重复到重用
  • 大整数乘法-表格法
  • 官方新出的 Kotlin 扩展库 KTX,到底帮你干了什么?
  • 诡异!React stopPropagation失灵
  • 聚簇索引和非聚簇索引
  • 十年未变!安全,谁之责?(下)
  • 它承受着该等级不该有的简单, leetcode 564 寻找最近的回文数
  • 小程序开发之路(一)
  • 智能情侣枕Pillow Talk,倾听彼此的心跳
  • ‌‌雅诗兰黛、‌‌兰蔻等美妆大品牌的营销策略是什么?
  • # Kafka_深入探秘者(2):kafka 生产者
  • # Spring Cloud Alibaba Nacos_配置中心与服务发现(四)
  • ( )的作用是将计算机中的信息传送给用户,计算机应用基础 吉大15春学期《计算机应用基础》在线作业二及答案...
  • (3)STL算法之搜索
  • (4)logging(日志模块)
  • (仿QQ聊天消息列表加载)wp7 listbox 列表项逐一加载的一种实现方式,以及加入渐显动画...
  • (免费领源码)python#django#mysql校园校园宿舍管理系统84831-计算机毕业设计项目选题推荐
  • (牛客腾讯思维编程题)编码编码分组打印下标(java 版本+ C版本)
  • (三)模仿学习-Action数据的模仿
  • (图文详解)小程序AppID申请以及在Hbuilderx中运行
  • (转)C#调用WebService 基础
  • *Django中的Ajax 纯js的书写样式1
  • ./indexer: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object fil
  • .net core 调用c dll_用C++生成一个简单的DLL文件VS2008
  • .net core 微服务_.NET Core 3.0中用 Code-First 方式创建 gRPC 服务与客户端
  • .net MySql
  • .net通过类组装数据转换为json并且传递给对方接口
  • .NET周刊【7月第4期 2024-07-28】
  • @Conditional注解详解
  • @我的前任是个极品 微博分析
  • [ C++ ] template 模板进阶 (特化,分离编译)
  • [24年新算法]NRBO-XGBoost回归+交叉验证基于牛顿拉夫逊优化算法-XGBoost多变量回归预测
  • [52PJ] Java面向对象笔记(转自52 1510988116)