VSCode C/C++多文件编译配置

多文件编译备忘,带注释的地方都需要注意!!!

launch.json文件

cpp 复制代码
{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "g++.exe - 生成和调试活动文件",
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}/out.exe",//1、 文件目录   执行程序.exe路径
            "args": [],
            "stopAtEntry": false,
            "cwd": "${fileDirname}", //2、文件目录
            "environment": [],
            "externalConsole": true, //3、 显示控制台窗口
            "MIMode": "gdb",
            "miDebuggerPath": "D:\\App\\Microsoft VS Code\\mingw64\\bin\\gdb.exe", //4、 gdb.exe路径
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description": "将反汇编风格设置为 Intel",
                    "text": "-gdb-set disassembly-flavor intel",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "C/C++: g++.exe 生成活动文件" //链接task.json,这个名称必须要与task.json中的label名称一致否则会编译出错
        }
    ]
}

task.json文件

cpp 复制代码
{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: g++.exe 生成活动文件",  //1、 与launch.json中preLaunchTask的名称一致
            "command": "D:\\App\\Microsoft VS Code\\mingw64\\bin\\g++.exe", //2、 c++编译器g++.exe的路径
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${fileDirname}/*.cpp", //"${file}", //多文件编译
                "-o",
                "${fileDirname}/out.exe" //"${fileDirname}\\${fileBasenameNoExtension}.exe" //多文件编译成功生成的可执行文件.exe
                
            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "调试器生成的任务。"
        }
    ],
    "version": "2.0.0"
}
相关推荐
青瓦梦滋4 小时前
WebSocket协议
linux·服务器·网络·c++·websocket·网络协议·http
Zwawa8 小时前
编译器工具链:GCC、Clang、MSVC、ICC、armclang
c语言·嵌入式·编译器
学逆向的8 小时前
C 指针常量与常量指针
c语言·开发语言·网络安全
golang学习记9 小时前
Zed Git重大更新:目录级对比支持分栏Diff
git·vscode·zed
水饺编程9 小时前
第2章:Linux 基础,exit 命令
linux·c语言·汇编
CodeYp20199 小时前
第15讲:二叉搜索树
开发语言·c++·二叉搜索树
pipixia2003310 小时前
C++继承面试四连问:内存叠加、私有继承、sizeof、权限重映射
c++·面试·嵌入式·继承·面向对象·对象模型
极客 - L U11 小时前
卡尔曼滤波从零到精通
c语言·数据结构·单片机·嵌入式硬件·mcu
牵猫散步的鱼儿13 小时前
C++ 内存分区
c++
choumin13 小时前
C++ 标准容器为什么不能存引用
c++·容器·引用类型