linux gdb的詳細用法 列印 (二)

2021-08-07 20:20:47 字數 1693 閱讀 5134

本次講解一下在gdb中如何使用列印的功能

#include int func()

return 0;

}int main()

1 列印命令 print 簡寫p

在for迴圈內第12行設定乙個斷點

執行效果:

使用p命令列印變數q的值

可以看到q的值為1。

常用的輸出格式有以下幾種:

x: 十六進製制格式

d:有符號的十進位制整數格式

u:無符號的十進位制整數格式

o:八進位制整數格式

t:二進位制整數格式

c:字元格式

f:浮點數格式

例如:列印出十六進製制格式

p/x 變數

2 列印命令display

(1)display 命令也用於列印變數的值

display 變數

display 命令和 print 命令的區別是,使用display會在程式每次執行到此斷點後都會列印出變數的值。

例如在程式的第12號打斷點,執行到斷點處,用display列印p q 的值

可以看到輸入displayp後,會列印出p的值,冒號前面為序號。在使display使能或不使能的時候會用到。

使用c命令使程式繼續執行後,又執行到斷點去,此時的現象為:

可以看到p 和 q的值被自動的列印出來。

(2)使用disable 使display命令暫時失效

格式: disable display 序號

例如,使序號1暫時取消列印,也就是不列印p的值,可以看到繼續執行後只列印了序號2中的q的值。

(3)使用enable 使失效的display 重新使能

格式:enable display 序號

(4)使用delete刪除指定的顯示資料的序號

格式delete display 序號

例如刪除序號為2的列印,也就是不列印q的值

undisplay命令與delete命令功能相同

(5)使用info命令檢視display相關的資訊

格式:info display

可以看到序號2已經不存在了,因為之前我們用delete命令刪除了。

現在可以看到序號1,為不使能狀態,列印的為變數p的值。

3 用whatis命令檢視變數或表示式的資料型別

格式:whatis 變數或表示式

this的詳細用法!!

this用法如下 1.使用this來顯示地標識欄位的所有者 有點官方味道,看下例子就清楚了 class student 2.使用this來傳遞當前正在執行的物件的乙個引用 class student class help newstudent方法呼叫了help類的insert靜態方法,需要向inse...

this的詳細用法!!

this用法如下 1.使用this來顯示地標識欄位的所有者 有點官方味道,看下例子就清楚了 class student 2.使用this來傳遞當前正在執行的物件的乙個引用 class student class help newstudent方法呼叫了help類的insert靜態方法,需要向inse...

tr的詳細用法

例 tr a a test.c 把檔案test.c中所有小寫a變化成大寫a 1 關於tr 通過使用 tr,您可以非常容易地實現 sed 的許多最基本功能。您可以將 tr 看作為 sed 的 極其 簡化的變體 它可以用乙個字元來替換另乙個字元,或者可以完全除去一些字元。您也可以用它來除去重複字元。這就...