以下是Ubuntu系統調試C++代碼的常用技巧及工具:
GDB(命令行調試)
sudo apt install gdb
g++ -g -o program program.cpp
break <行號/函數名>
:設置斷點run
:啟動程序next
/step
:單步執行(跳過/進入函數)print <變量名>
:查看變量值backtrace
:查看調用棧。Visual Studio Code(圖形化調試)
.vscode/launch.json
:設置調試器類型為cppdbg
,指定編譯器和程序路徑。.vscode/tasks.json
:配置編譯任務,添加-g
選項生成調試信息。IDE集成調試
內存與性能分析
valgrind --leak-check=full ./program
。-fsanitize=address
選項,快速定位內存錯誤。多線程與復雜場景
info threads
查看線程列表,thread <ID>
切換線程,break <函數>
設置線程專屬斷點。rr
工具記錄執行過程,rr replay
回放調試(需安裝rr
)。代碼優化與驗證
break <行號> if <條件>
,僅在滿足條件時暫停。watch <變量名>
,監控變量值變化。backtrace
和print
命令分析調用棧和變量狀態。參考資料:[1,2,3,4,5,6,7,8,9,10]