gdb 的 vscode 调试器未按照配置运行

The vscode debugger for gdb is not running as per configuration

提问人:denisssj 提问时间:6/30/2023 最后编辑:denisssj 更新时间:6/30/2023 访问量:93

问:

我正在尝试将命令行参数传递给 vscode 中的 gdb。这是我的启动.js配置。

{
"configurations": [
{
    "name": "(gdb) Launch",
    "type": "cppdbg",
    "request": "launch",
    "program": "${workspaceFolder}/main",
    "args": ["1"],
    "stopAtEntry": false,
    "cwd": "${fileDirname}",
    "environment": [],
    "externalConsole": false,
    "MIMode": "gdb",
    "setupCommands": [
        {
            "description": "Enable pretty-printing for gdb",
            "text": "-enable-pretty-printing",
            "ignoreFailures": true
        },
        {
            "description": "Set Disassembly Flavor to Intel",
            "text": "-gdb-set disassembly-flavor intel",
            "ignoreFailures": true
        }
    ]
}
]

}

下面是文件和文件夹结构。

Folder structure for dummy project

这是简单的健全性检查代码

#include<stdio.h>


int main(int argc, char* argv[])
{
   printf("argc == %d\n", argc);
   return 0;
}

它的输出是

argc == 1

我无法捕捉到论点。请帮忙。

c visual-studio-code 调试 gdb cgdb

评论

0赞 denisssj 6/30/2023
我很抱歉,我已经补充了这一点。至于输出,我希望 argc val 是我传递的参数数,即 argc 值应该是 2 而不是 1。

答:

0赞 denisssj 6/30/2023 #1

似乎当单击 vscode 中提供的右上角的按钮时,它不会按照 launch.json config 中提供的配置运行。要运行它,请转到右侧工具栏,然后单击调试按钮。然后选择(gdb)lauch.json的选项并运行它。然后,您的代码将按照 launch.json 运行。

评论

0赞 Gerhardh 6/30/2023
这可能是屏幕截图可能有用的一种或罕见情况。它可以更清楚地说明涉及哪些按钮。
0赞 starball 6/30/2023
您是否正在使用 Code Runner 扩展?