国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

完善資料讓更多小伙伴認識你,還能領取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 的四個字節都以二進制的方式打印出來了。

    • b 字節
    • h 半字,即雙字節
    • w 字,即四字節
    • g 八字節
    • n 表示要顯示的內存單元數,默認值為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
(內容過多未顯示完全)
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    88

    文章

    11760

    瀏覽量

    219019
  • 調試
    +關注

    關注

    7

    文章

    646

    瀏覽量

    35654
  • 變量
    +關注

    關注

    0

    文章

    616

    瀏覽量

    29505
  • gdb
    gdb
    +關注

    關注

    0

    文章

    61

    瀏覽量

    13885
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    使用GDB調試Linux應用程序

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

    ElfBoard技術貼|如何在【RK3588】ELF 2開發板進行GDB調試

    GDB(GNU Project Debugger)是在Linux環境下功能全面的調試工具。它提供了一系列強大的調試功能,包括設置斷點、單步執行、打印與觀察變量
    的頭像 發表于 11-11 13:47 ?5226次閱讀
    ElfBoard技術貼|如何在【RK3588】ELF 2開發板<b class='flag-5'>進行</b><b class='flag-5'>GDB</b><b class='flag-5'>調試</b>

    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

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

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

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

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

    實例演示GDB的使用

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

    嵌入式Linux GDB調試環境搭建與使用

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

    linux下gdb安裝與使用簡介

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

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

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

    嵌入式Linux GDB是什么

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

    Linux系統中如何進行GDB調試

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

    GDB調試工具的原理

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

    如何使用GDB調試工具

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

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

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