tasks.json

tasks.json 用来编译 C/C++ 文件

// https://code.visualstudio.com/docs/editor/tasks
{"version": "2.0.0","tasks": [{"label": "Compile", // 任务名称,与launch.json的preLaunchTask相对应"command": "D:/Environment/mingw64/bin/g++.exe",   // 要使用的编译器,C++用g++"args": ["-fdiagnostics-color=always","${file}","-o",    // 指定输出文件名,不加该参数则默认输出a.exe,Linux下默认a.out"${fileDirname}/${fileBasenameNoExtension}.exe","-g",    // 生成和调试有关的信息"-m64",  // 不知为何有时会生成16位程序而无法运行,此条可强制生成64位的"-Wall", // 开启额外警告"-static-libgcc",     // 静态链接libgcc,一般都会加上//"-fexec-charset=GBK", // 生成的程序使用GBK编码,不加这条会导致Win下输出中文乱码;繁体系统改成BIG5"-D__USE_MINGW_ANSI_STDIO", // 用MinGW写C时留着,否则不需要,用于支持printf的%zd和%Lf等], // 编译的命令,其实相当于VSC帮你在终端中输了这些东西"type": "process", // process是把预定义变量和转义解析后直接全部传给command;shell相当于先打开shell再输入命令,所以args还会经过shell再解析一遍"group": {"kind": "build","isDefault": true // 不为true时ctrl shift B就要手动选择了},"presentation": {"echo": true,"reveal": "always", // 执行任务时是否跳转到终端面板,可以为always,silent,never。具体参见VSC的文档,即使设为never,手动点进去还是可以看到"focus": false,     // 设为true后可以使执行task时焦点聚集在终端,但对编译C/C++来说,设为true没有意义"panel": "shared"   // 不同的文件的编译信息共享一个终端面板},"problemMatcher":"$gcc" // 捕捉编译时终端里的报错信息到问题面板中,修改代码后需要重新编译才会再次触发// 本来有Lint,再开problemMatcher就有双重报错,但MinGW的Lint效果实在太差了;用Clangd可以注释掉}]
}

launch.json

launch.json 用于调试 C/C++ 程序

// https://code.visualstudio.com/docs/cpp/launch-json-reference
{"version": "0.2.0","configurations": [{"name": "(gdb) Launch", // 配置名称,将会在启动配置的下拉菜单中显示"type": "cppdbg", // 配置类型,对于C/C++可认为此处只能是cppdbg,由cpptools提供;不同编程语言不同"request": "launch", // 可以为launch(启动)或attach(附加)"program": "${fileDirname}/${fileBasenameNoExtension}.exe", // 将要进行调试的程序的路径"args": [], // 程序调试时传递给程序的命令行参数,一般设为空"stopAtEntry": false, // 设为true时程序将暂停在程序入口处,相当于在main上打断点"cwd": "${workspaceFolder}", // 调试程序时的工作目录,此为工作区文件夹;改成${fileDirname}可变为文件所在目录"environment": [], // 环境变量"externalConsole": false, // 使用单独的cmd窗口,与其它IDE一致;为false时使用内置终端"internalConsoleOptions": "neverOpen", // 如果不设为neverOpen,调试时会跳到“调试控制台”选项卡,你应该不需要对gdb手动输命令吧?"MIMode": "gdb", // 指定连接的调试器,可以为gdb或lldb。但我没试过lldb"miDebuggerPath": "D:/Environment/mingw64/bin/gdb.exe", // 调试器路径,Windows下后缀不能省略,Linux下则不要"setupCommands": [{ // 模板自带,好像可以更好地显示STL容器的内容,具体作用自行Google"description": "Enable pretty-printing for gdb","text": "-enable-pretty-printing","ignoreFailures": false}],"preLaunchTask": "Compile" // 调试前执行的任务,一般为编译程序。与tasks.json的label相对应}]
}

vscode C/C++ 环境的 2个 json 文件相关推荐

  1. ubuntu下vscode配置C++项目编译调试(json文件),以高翔octomap教程为例,顺便解决vscode无法设置断点问题.

    首先展示一下文件路径结构: 其中C++文件在src目录中,.vscode以及CMakeLists.txt在上层目录. 1.编译设置 该项目的编译是在build.sh文件中,内容就是 cd build ...

  2. vscode配置Golang环境所需的bin文件夹(各种包)

    链接:https://pan.baidu.com/s/1K8GiDmD582FVthpeIIuXGQ 提取码:f1a4

  3. 【vscode 配置c++环境 win10】

    1.下载安装包 官方下载地址 2.安装相关插件 1> 点击左侧栏最下方的插件按钮 2> 搜索c++,然后,将下图中的几个插件安装下 3.安装配置MinGW-W64 GCC 1> 官方 ...

  4. Linux寻找VSCode中需要的几种json文件

    launch.json和tasks.json 写完main.cpp文件后,按F5调试,此时vscode提示我们选择调试程序,我们这里选择C++gdb,会自动生成一个.vscode文件夹并在里面生成相应 ...

  5. Grafana导入 json 文件的 dashboard 错误 Templating Failed to upgrade legacy queries Datasource xxx not found

    参考 Support dashboard variables in dashboard provisioning 前言 从一套环境导出 dashboard 为 json 文件,在另一套环境中导入,那么 ...

  6. vs code c语言json文件配置,解析VScode在Windows环境下c_cpp_properties.json文件配置问题(推荐)...

    前言继承是OOP设计中的重要概念.在C++语言中,派生类继承基类有三种继承方式:私有继承(private).保护继承(protected)和公有继承(public).一.继承规则继承是C++中的重要特 ...

  7. vscode配置python环境以及使用json文件配置默认解释器、代码自动保存、pydesigner、kite

    真香警告!感觉这篇博客流程下来,我从一个pycharm小迷弟变成了vscode小迷弟!vscode真的非常方便,其实主要是因为它的轻量级,运行速度快,有的时候使用pycharm更换python解释器要 ...

  8. VSCode JS主题风格与样式环境配置 settings.json 文件配置 完成 webstorm风格化配置

    webstorm 很好用,但破解版难找,有些功能可能还存在问题(本人用的破解版在全局搜索上不对),而学生认证暂时的,因此不如直接把VScode 配置成webstorm样式,风格化很接近了.有注释参考. ...

  9. python vscode_VScode || 为VScode配置python环境

    随着逐渐参与到TUF项目中,学习python势在必行,因此,是时候为VScode配置python环境了. 目录: Ⅰ 从官网下载python Ⅱ 安装python并将python加入到path Ⅲ 检 ...

最新文章

  1. linux 脚本停止自身,Linux系统定时任务时shell脚本停止执行如何解决?
  2. 什么是textCNN? 能用来做什么?结构是什么?
  3. 自学python 知乎-马哥教育官网-专业Linux培训班,Python培训机构
  4. ESP32cam蓝牙模块与arduino uno通信实验
  5. 三级pc技术_EeIE智博会展商推荐鑫路远—专业从事液控设备的研发、生产和销售的高新技术企业...
  6. 什么是业务运维,企业如何实现互联网+业务与IT的融合
  7. mysql主从同步读写分离
  8. 阿里云CentOS 7中zabbix4.2配置shell脚本邮件报警
  9. 企业开发基础设施--序
  10. 小米手机连接MAC电脑
  11. Flutter从相册选择图片和相机拍照(image_picker)
  12. float 精度探究
  13. 阿里云企业邮箱哪个代理商好
  14. CentOS报错make: *** [fuzz-commit-graph.o] Error 1
  15. BGP距离矢量动态路由协议
  16. 华为p10关闭更新_华为P10正常升级和强制降级详细方法
  17. Basic Authorization 认证方法
  18. 计算机启动方式如何选择USB启动,u盘启动选择什么模式
  19. autojs常用函数
  20. 互联网全球性、开放性的特点

热门文章

  1. 英语见面礼仪:与各国友人见面必说的第一句话
  2. html 点击事件阻止冒泡,js阻止事件冒泡的两种方法
  3. CHAPTER 5 Zabbix 自动发现、自动注册、分布式监控、SNMP监控
  4. 开源硬件 专利_与开源思想领袖的专利巨魔和开放文档格式
  5. typecho插件ArticleProtect-给文章加上访问权限
  6. zepto获取html内容,Zepto这样操作元素属性
  7. 高通QXDM抓取log
  8. C语言中一些库函数(字符串类型)的实现
  9. 第五周总结11-19
  10. 在代码里设置程序的图标