gdb调试方法

gdb查看内存数据

格式: x /nfu
说明:
x 是 examine 的缩写,意思是检查。

n表示要显示的内存单元的个数,比如:20

f表示显示方式, 可取如下值:

x 按十六进制格式显示变量。
d 按十进制格式显示变量。
u 按十进制格式显示无符号整型。
o 按八进制格式显示变量。
t 按二进制格式显示变量。
a 按十六进制格式显示变量。
i 指令地址格式
c 按字符格式显示变量。
f 按浮点数格式显示变量。

u表示一个地址单元的长度:

b表示单字节,
h表示双字节,
w表示四字节,
g表示八字节

测试

x /20xh 0xfff000

20是数量,x是16进制,h是双字。

(gdb) x /20xh 0xfff000      // linux( copy_process 里面的p)
0xfff000:       0x0002  0x0000  0x000f  0x0000  0x000f  0x0000  0x0000  0x0000
0xfff010:       0x0000  0x0000  0x0000  0x0000  0x0000  0x0000  0x0000  0x0000
0xfff020:       0x0000  0x0000  0x0000  0x0000
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 0. 前言 自古调试分两派,printf直接输出派 和 gdb调试派。 printf派直观暴力,但不全面。 gdb...
    dounine阅读 1,445评论 0 2
  • 一、概述 LLDB全称 [ Low Level Debugger ], 默认内置于Xcode中的动态调试工具。标准...
    Superman168阅读 15,404评论 2 19
  • gdb是一个由GNU开源组织发布的、UNIX/LINUX操作系统下的、基于命令行的、功能强大的程序调试工具。 启动...
    techping阅读 1,513评论 0 2
  • 一、编译运行 1.1、程序带调试信息 使用额外的 '-g' 选项来编译程序: gcc -g eg.c -o eg ...
    zhuweipu阅读 1,555评论 0 1
  • 摘自《Linux GNU C 程序观察》 罗秋明 著, 清华大学出版社 1. 编译的各阶段 C 程序 从源代码到可...
    Kop李小阳阅读 1,220评论 0 1