小编给大家分享一下vscode不能命中断点的解决方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
目前创新互联建站已为超过千家的企业提供了网站建设、域名、网络空间、网站托管、服务器托管、企业网站设计、宾阳网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。vscode不能命中断点如何解决?
vscode c++ 编译生成后,调试时无法命中断点的解决办法
//test.cpp #includeint 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; }
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 } ] } ] }
tasks.json
{ // See /tupian/20230522/tasks#vscode // 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"] } ] }
编译成功后,在源码中设置断点,却无法命中断点。
后来查看官方c++编译调试文档和尝试,在launch.json文件的
"setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ]
后面加上
"preLaunchTask": "test" 配置,调试时就可以正常命中断点了。
注意:别忘了"setupCommands"的中括号’ ] ‘后面加上一个逗号。
以上是“vscode不能命中断点的解决方法”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!