gdb x命令

gdb examine命令(简写 )用来查看内存地址中的值。命令的语法如下所示:

    x/<n/f/u> <addr>

  n、f、u是可选的参数。

       n 是一个正整数,表示需要显示的内存单元的个数,也就是说从当前地址向后显示几个内存单元的内容,一个内存单元的大小由后面的u定义。

       f  表示显示的格式。(octal), x(hex), d(decimal), u(unsigned decimal),t(binary), f(float), a(address), i(instruction), c(char) and s(string), b(byte)

  u 表示从当前地址往后请求的字节数,如果不指定的话,gdb默认是4个bytes。u参数可以用下面的字符来代替,b(byte), h(halfword), w(word), g(giant, 8 bytes)。当我们指定了字节长度后,GDB会从指内存定的内存地址开始,读写指定字节,并把其当作一个值取出来。

  <addr> 表示一个内存地址。

  注意:严格区分n和u的关系,n表示单元个数,u表示每个单元的大小。

  n/f/u三个参数可以一起使用。例如:

  命令:x/3uh 0x54320 表示,从内存地址0x54320读取内容,h表示以双字节为一个单位,3表示输出三个单位,u表示按无符号十进制显示。

原文地址:https://www.cnblogs.com/tongyishu/p/13261158.html