您好,登錄后才能下訂單哦!
小編給大家分享一下vscode不能命中斷點的解決方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
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; }
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 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"] } ] }
編譯成功后,在源碼中設置斷點,卻無法命中斷點。
后來查看官方c++編譯調試文檔和嘗試,在launch.json文件的
"setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ]
后面加上
"preLaunchTask": "test" 配置,調試時就可以正常命中斷點了。
注意:別忘了"setupCommands"的中括號’ ] ‘后面加上一個逗號。
以上是“vscode不能命中斷點的解決方法”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。