So lösen Sie das Problem, dass vscode keine Haltepunkte erreichen kann

藏色散人
Freigeben: 2020-02-06 11:21:43
Original
7381 Leute haben es durchsucht

So lösen Sie das Problem, dass vscode keine Haltepunkte erreichen kann

vscode不能命中断点如何解决?

vscode c++ 编译生成后,调试时无法命中断点的解决办法

//test.cpp
#include <stdio.h>
int g_var = 0;
void print_line(char *str)
{
    if (str != NULL)
        printf("%s\r\n", str);
    else
        printf("null string\r\n");
}
int main (int argc, char **argv)
{
    int l_var = 1;
    print_line("hello world!");
    printf("g_var = %d, l_var = %d.\r\n", g_var, l_var);
    return 0;
}
Nach dem Login kopieren

launch.json

{
        "version": "0.2.0",
        "configurations": [
            {
                "name": "(gdb) Launch",
                "type": "cppdbg",
                "request": "launch",
                "program": "${workspaceRoot}/test.exe",
                "args": [],
                "stopAtEntry": false,
                "cwd": "${workspaceRoot}",
                "environment": [],
                "externalConsole": true,
                "MIMode": "gdb",
                "miDebuggerPath": "C:\\MinGW\\bin\\gdb.exe",
                "setupCommands": [
                    {
                        "description": "Enable pretty-printing for gdb",
                        "text": "-enable-pretty-printing",
                        "ignoreFailures": true
                    }
                ]
            }
        ]
    }
Nach dem Login kopieren

tasks.json

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
        {
            "taskName": "test",
            "type": "shell",
            "command": "g++",
            "args": ["-g", "${file}", "-o", "${workspaceRoot}/test.exe"]
        }
    ]
}
Nach dem Login kopieren

编译成功后,在源码中设置断点,却无法命中断点。

后来查看官方c++编译调试文档和尝试,在launch.json文件的

"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
Nach dem Login kopieren

后面加上

"preLaunchTask": "test" 配置,调试时就可以正常命中断点了。

注意:别忘了"setupCommands"的中括号’ ] ‘后面加上一个逗号。

相关推荐:vscode教程

Das obige ist der detaillierte Inhalt vonSo lösen Sie das Problem, dass vscode keine Haltepunkte erreichen kann. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage