變量查看
變量查看: 最常見的使用便是使用print(可簡寫為p)打印變量內容。
以上述程序為例:gdb helloworld break helloworld.c:17 if i == 0 (gdb) run Starting program: /home/book/helloworld helloworld. Breakpoint 2, main (argc=1, argv=0x7fffffffdca8) at helloworld.c:17 17 result += i; (gdb) print i < ------------------ 查看變量 i 當前的值 $1 = 10 (gdb) print result < ------------------ 查看變量 result 當前的值 $2 = 45 (gdb) print argc < ------------------ 查看變量 argc 當前的值 $3 = 1 (gdb) print str $4 = 0x4006c8 "Hello World" < ------------------ 查看變量 str 當前的值
查看內存: examine(簡寫為x)可以用來查看內存地址中的值。語法如下:
x/[n][f][u] addr
其中:
單元類型常見有如下:
示例:
(gdb) x/4b str 0x4006c8: 01001000 01100101 01101100 01101100
可以看到,變量 str 的四個字節都以二進制的方式打印出來了。
- b 字節
- h 半字,即雙字節
- w 字,即四字節
- g 八字節
- n 表示要顯示的內存單元數,默認值為1
- f 表示要打印的格式,前面已經提到了格式控制字符
- u 要打印的單元長度
- addr 內存地址
ra 0x3ff7ef2282 0x3ff7ef2282 < __libc_start_main+160 >
sp 0x3ffffffaa0 0x3ffffffaa0
gp 0x2aaaaac800 0x2aaaaac800
tp 0x3ff7fdd250 0x3ff7fdd250
t0 0x3ff7ed60b0 274742468784
t1 0x3ff7ef21e2 274742583778
t2 0x2aaaaac4f0 183251944688
fp 0x3ffffffab0 0x3ffffffab0
s1 0x0 0
a0 0x1 1
a1 0x3ffffffc28 274877905960
a2 0x3ffffffc38 274877905976
a3 0x0 0
a4 0x3ffffffad8 274877905624
a5 0x0 0
a6 0x3ff7fd88a8 274743527592
(內容過多未顯示完全)
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
Linux
+關注
關注
87文章
11345瀏覽量
210400 -
調試
+關注
關注
7文章
589瀏覽量
34064 -
變量
+關注
關注
0文章
613瀏覽量
28466 -
gdb
+關注
關注
0文章
60瀏覽量
13348
發布評論請先 登錄
相關推薦
Linux下用gdb 調試、查看代碼堆棧 - 程良
的參數名及其值。info locals打印出當前函數中所有局部變量及其值。info catch打印出當前的函數中的異常處理信息。查看源程序—————一、顯示源代碼GDB 可以打印出所調試
發表于 12-01 09:46
ARM平臺如何玩轉GDB遠程調試?
程序、單步執行、跳入/跳出函數、設置斷點、查看變量等等,它是UNIX/LINUX操作系統下強大的程序調試工具。GDB支持多種語言,包括Ada、匯編、C/C++、D、Fortran、GO
發表于 09-27 15:28
Linux應用的GDB調試的原理及過程分析
GDB調試是應用程序在開發板上運行,然后在PC機上對開發板上得應用程序進行調試,PC機運行GDB,開發板上運行GDBServer。在應用程序
發表于 03-05 09:44
?3459次閱讀
![Linux應用的<b class='flag-5'>GDB</b><b class='flag-5'>調試</b>的原理及過程分析](https://file.elecfans.com/web1/M00/B5/54/pIYBAF5gWW-ARv_SAABcEAzxVmk577.png)
嵌入式Linux GDB調試環境搭建與使用
/跳出函數、設置斷點、查看變量等等。Ubuntu資源充足,可以直接用gdb調試程序。嵌入式Linux性能弱,一般PC上運行源碼和GDB工具,
發表于 11-01 17:59
?8次下載
![嵌入式Linux <b class='flag-5'>GDB</b><b class='flag-5'>調試</b>環境搭建與使用](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
Linux系統中如何進行GDB調試
啟動調試 $ gdb helloWorldGNU gdb (GDB) Red Hat Enterprise Linux 8.2-12.el8 Copyright (C) 2018 F
如何使用GDB調試工具
在對應程序目錄中使用下面的命令 gdb test 2、調試已經開始運行的程序進程 調試已經開始運行的程序進程,首先先用top命令查看運行的程序進程的pid如下: 比如我要加載的程序
![如何使用<b class='flag-5'>GDB</b><b class='flag-5'>調試</b>工具](https://file1.elecfans.com/web2/M00/AD/44/wKgaomVMoQ-ALIZ1AAG9PSG5F_o447.jpg)
如何使用linux下gdb來調試python程序
如何使用linux下gdb來調試python程序? 在Linux下,可以使用GDB(GNU調試器)來調試Python程序。
評論