VScode配置文件launch.json 和 tasks.json配置项详细说明

tasks.json

tasks.json为编译配置文件

cpp 复制代码
{
    "version": "2.0.0",  // tasks.json 文件的版本号

    "tasks": [  // 任务数组,包含一个编译任务配置对象
        {
            "type": "cppbuild",  // 任务类型,这里是 cppbuild 类型

            "label": "compile",  // 任务的标签,用于在命令面板中显示

            "command": "/usr/bin/g++",  // 编译命令的路径

            "args": [  // 编译命令的参数
                "-g",  // 添加 gdb 调试选项
                "${file}",  // 当前活动文件的路径
                "-o",  // 指定生成可执行文件的名称
                "${fileDirname}/${fileBasenameNoExtension}"  // 生成的可执行文件的路径和名称
            ],

            "options": {  // 任务选项
                "cwd": "${fileDirname}"  // 任务执行时的工作目录
            },

            "problemMatcher": [  // 问题匹配器,用于捕获并处理编译错误信息
                "$gcc"  // 使用预定义的 gcc 问题匹配器
            ],

            "group": {  // 任务分组
                "kind": "build",  // 任务的分组类型为构建
                "isDefault": true  // 表示快捷键 Ctrl+Shift+B 可以运行该任务
            },

            "detail": "compiler: /usr/bin/g++"  // 任务的详细信息,描述该任务使用的编译器路径
        }
    ]
}

launch.json

launch.json为调试配置文件

cpp 复制代码
{
    "version": "0.2.0", // launch.json 文件的版本号

    "configurations": [ // 配置数组,包含一个调试配置对象
        {
            "name": "(gdb) Launch", // 调试配置的名称,显示在调试器界面中

            "type": "cppdbg", // 调试器类型,这是 C++ 调试器的类型

            "request": "launch", // 调试请求类型,表示启动新的调试会话

            "program": "${workspaceFolder}/build/main", // 要调试的程序的入口文件路径

            "args": [], // 传递给程序的命令行参数,当前为空数组

            "stopAtEntry": false, // 是否在程序入口处自动中断,这里设置为不中断

            "cwd": "${workspaceFolder}/build", // 程序的当前工作目录

            "environment": [], // 环境变量的配置,当前为空数组

            "externalConsole": false, // 是否使用外部控制台窗口,这里设置为不使用

            "MIMode": "gdb", // 调试器的模式,这里使用 GDB 调试器

            "preLaunchTask": "compile", // 调试会话之前执行的任务名称

            "setupCommands": [ // GDB 初始化命令列表
                {
                    "description": "Enable pretty-printing for gdb", // 命令描述
                    "text": "-enable-pretty-printing", // GDB 命令
                    "ignoreFailures": true // 如果命令执行失败是否忽略
                }
            ],

            "miDebuggerPath": "/usr/bin/gdb" // GDB 可执行文件的路径
        }
    ]
}
相关推荐
superior tigre4 小时前
1.linux环境配置+ssh远程连接vscode调试(问题:无法联网,无法共享粘贴板,不满足运行vscode服务器的先决条件)
linux·服务器·vscode
老黄编程13 小时前
VSCode 的百度 AI编程插件
ide·vscode·ai编程
老黄编程15 小时前
VSCode AI编程插件
ide·vscode·ai编程
Naiva16 小时前
ESP32-C3 入门09:基于 ESP-IDF + LVGL + ST7789 的 1.54寸 WiFi 时钟(SquareLine Studio 移植)
ide·笔记·vscode
return(b,a%b);19 小时前
VSCode 远程开发连接(glibc<2.28)
ide·vscode·编辑器
speop19 小时前
vscode使用tmux技巧
ide·vscode·编辑器
技术程序猿华锋1 天前
深度解码OpenAI的2025野心:Codex重生与GPT-5 APIKey获取调用示例
人工智能·vscode·python·gpt·深度学习·编辑器
theRavensea2 天前
在VSCode中使用Vim模式
ide·vscode·vim
wangduqiang7472 天前
VSCode 下 PlatformIO 的使用
ide·vscode·编辑器
ZKY_243 天前
【VsCode】离线状态下安装插件
vscode