gdb學習記錄(一)

2021-06-09 04:40:44 字數 737 閱讀 3983

前段時間在linux下面寫程式,然後遇到不爽的一點就是除錯極其麻煩,各種不爽,然後看見gdb除錯(自己太孤陋寡聞了),這個除錯工具好強大,唯一不爽的就是好多命令,真希望腦袋裡面有個儲存晶元。

筆記對於需要除錯的程式首先要執行的就是

g++ -g test.cpp -o test     注意-g不能缺少,因為這是保留編譯資訊

如果沒有-g,就看不見程式的函式名,變數名,所代替的全是執行時的記憶體位址

然後除錯的時候gdb test

break  n   在第n行新增斷點

info  break  檢視斷點資訊

delete  num  斷點的刪除(注意此處num不是行號,通過info檢視斷點標號)

l  是列出**

r  是執行

p i  答應出i的值

n  是執行下一句話

c  是繼續執行,執行到下一處斷點

bt 是檢視函式棧的情況,可以通過這個來檢視棧裡面函式的情況

finish 執行完當前函式

q  退出除錯,將程式執行結束

啟動gdb 的幾種方法

1. gdb

program是可執行檔案

2. gdb core 

用gdb同時除錯乙個執行程式和core檔案,core 是程式非法執行後的檔案

3. gdb

如果程式是乙個服務程式,那麼就可以制定這個伺服器執行時的程序id,

gdb會自動attach上去,並除錯他。

GDB除錯方法 學習記錄

主要是學習記錄,可能存在大段複製文字。侵刪。gdb除錯命令詳解 面試 gdb除錯 gdb the gnu project debugger gdb 除錯利器 使用 gdb 除錯 linux 軟體 5.cgdb 功能鍵 1.啟動你的程式,可以按照你的自定義的要求隨心所欲的執行程式。2.可讓被除錯的程式...

記錄一下我的GDB配置

ps 要確定你所安裝的gdb能夠執行python指令碼cd mkdir gdb cd gdb svn co svn 二 改動使用者資料夾下的.gdbinit檔案 將下面文字複製乙份即可 為了更好的在gdb中顯示stl容器而執行的python指令碼 python import sys qch是我的us...

學習記錄一

基礎學習記錄一 1 函式式程式設計 lambda 要求 函式介面 functionalinte ce只有乙個抽象方法,格式 引數 2 如何重構 箭頭型 衛語句3 程式錯誤處理 錯誤碼和異常捕捉 4 如何保障資料安全 資料隔離提供操作介面 只進不出 定義安全級別 敏感資料模糊化 傳輸加密 隨機 失效 ...