Home > Development Tools > VSCode > body text

How to solve the problem that vscode cannot hit breakpoints

藏色散人
Release: 2020-02-06 11:21:43
Original
7374 people have browsed it

How to solve the problem that vscode cannot hit breakpoints

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;
}
Copy after login

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
                    }
                ]
            }
        ]
    }
Copy after login

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"]
        }
    ]
}
Copy after login

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

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

"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
Copy after login

后面加上

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

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

相关推荐:vscode教程

The above is the detailed content of How to solve the problem that vscode cannot hit breakpoints. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template