欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

GDB調試如何進行變量查看

麥辣雞腿堡 ? 來源:嵌入式Linux充電站 ? 作者:Vincent ? 2023-09-26 16:17 ? 次閱讀

變量查看

  • 變量查看: 最常見的使用便是使用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 的四個字節(jié)都以二進制的方式打印出來了。

    • b 字節(jié)
    • h 半字,即雙字節(jié)
    • w 字,即四字節(jié)
    • g 八字節(jié)
    • n 表示要顯示的內存單元數(shù),默認值為1
    • f 表示要打印的格式,前面已經提到了格式控制字符
    • u 要打印的單元長度
    • addr 內存地址
  • 查看寄存器內容: info registers

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
(內容過多未顯示完全)
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11350

    瀏覽量

    210466
  • 調試
    +關注

    關注

    7

    文章

    589

    瀏覽量

    34075
  • 變量
    +關注

    關注

    0

    文章

    613

    瀏覽量

    28470
  • gdb
    gdb
    +關注

    關注

    0

    文章

    60

    瀏覽量

    13350
收藏 人收藏

    評論

    相關推薦

    QEMU+GDB調試ARM程序

    通過GDB調試代碼的便利性無需贅言。我們直接以調試meta-hypervisor為示例進行說明。
    的頭像 發(fā)表于 10-08 09:17 ?3006次閱讀

    使用GDB調試Linux應用程序

    本篇講解使用GDB調試Linux應用程序,以下以 `hellowld.c` 為例介紹 GDB調試入門。
    發(fā)表于 06-27 15:48 ?489次閱讀

    Linux下用gdb 調試、查看代碼堆棧 - 程良

    的參數(shù)名及其值。info locals打印出當前函數(shù)中所有局部變量及其值。info catch打印出當前的函數(shù)中的異常處理信息。查看源程序—————一、顯示源代碼GDB 可以打印出所調試
    發(fā)表于 12-01 09:46

    ARM平臺如何玩轉GDB遠程調試?

    程序、單步執(zhí)行、跳入/跳出函數(shù)、設置斷點、查看變量等等,它是UNIX/LINUX操作系統(tǒng)下強大的程序調試工具。GDB支持多種語言,包括Ada、匯編、C/C++、D、Fortran、GO
    發(fā)表于 09-27 15:28

    IAR 在線調試查看各種變量的不同方法

    IAR在線調試查看各種變量的不同方法
    的頭像 發(fā)表于 03-12 10:00 ?1.4w次閱讀

    Linux應用的GDB調試的原理及過程分析

    GDB調試是應用程序在開發(fā)板上運行,然后在PC機上對開發(fā)板上得應用程序進行調試,PC機運行GDB,開發(fā)板上運行GDBServer。在應用程序
    發(fā)表于 03-05 09:44 ?3462次閱讀
    Linux應用的<b class='flag-5'>GDB</b><b class='flag-5'>調試</b>的原理及過程分析

    實例演示GDB的使用

    GDB簡介 GDB(GNU Debugger)是一個強大的命令行調試工具。一般的,在Windows下進行開發(fā),很少操控命令行調試,
    的頭像 發(fā)表于 10-19 09:58 ?2777次閱讀
    實例演示<b class='flag-5'>GDB</b>的使用

    嵌入式Linux GDB調試環(huán)境搭建與使用

    /跳出函數(shù)、設置斷點、查看變量等等。Ubuntu資源充足,可以直接用gdb調試程序。嵌入式Linux性能弱,一般PC上運行源碼和GDB工具,
    發(fā)表于 11-01 17:59 ?8次下載
    嵌入式Linux <b class='flag-5'>GDB</b><b class='flag-5'>調試</b>環(huán)境搭建與使用

    linux下gdb安裝與使用簡介

    GDB,又稱GNU調試器,是用來幫助調試我們程序的工具。gdb可以設置斷點、查看變量、堆??臻g的
    的頭像 發(fā)表于 08-16 09:03 ?3483次閱讀
    linux下<b class='flag-5'>gdb</b>安裝與使用簡介

    ARM平臺如何玩轉GDB遠程調試?

    前言關于GDB工具GDB工具是GNU項目調試器,基于命令行使用。和其他的調試器一樣,可使用GDB工具單步運行程序、單步執(zhí)行、跳入/跳出函數(shù)、
    的頭像 發(fā)表于 09-28 18:17 ?1048次閱讀
    ARM平臺如何玩轉<b class='flag-5'>GDB</b>遠程<b class='flag-5'>調試</b>?

    嵌入式Linux GDB是什么

    函數(shù)、設置斷點、查看變量等等,它是 UNIX/LINUX 操作系統(tǒng)下強大的程序調試工具。 gdb 支持多種語言
    的頭像 發(fā)表于 07-27 16:29 ?806次閱讀
    嵌入式Linux <b class='flag-5'>GDB</b>是什么

    Linux系統(tǒng)中如何進行GDB調試

    啟動調試 $ gdb helloWorldGNU gdb (GDB) Red Hat Enterprise Linux 8.2-12.el8 Copyright (C) 2018 F
    的頭像 發(fā)表于 10-04 15:52 ?465次閱讀

    GDB調試工具的原理

    了。 1.2 執(zhí)行中進程調試 如果想對一個已經執(zhí)行的進程進行調試,那么就要在gdb這個父進程中調用ptrace(PTRACE_ATTA
    的頭像 發(fā)表于 11-09 17:04 ?1005次閱讀
    <b class='flag-5'>GDB</b><b class='flag-5'>調試</b>工具的原理

    如何使用GDB調試工具

    在對應程序目錄中使用下面的命令 gdb test 2、調試已經開始運行的程序進程 調試已經開始運行的程序進程,首先先用top命令查看運行的程序進程的pid如下: 比如我要加載的程序
    的頭像 發(fā)表于 11-09 17:17 ?917次閱讀
    如何使用<b class='flag-5'>GDB</b><b class='flag-5'>調試</b>工具

    如何使用linux下gdb調試python程序

    如何使用linux下gdb調試python程序? 在Linux下,可以使用GDB(GNU調試器)來調試Python程序。
    的頭像 發(fā)表于 01-31 10:41 ?2747次閱讀