gdb 查看内存 raw bytes 及变量类型

对以下代码进行编译:

int main()
{
    int a[] = {1,2,3};
    return 0;
}
$ gcc -g arrays.c -o arrays
$ gdb arrays
(gdb) break main
(gdb) run
(gdb) next

1)可以使用 print 显示内容, ptype 显示类型

(gdb) print a
$1 = {1, 2, 3}
(gdb) ptype a
type = int [3]

 

2)使用 x 进行内存查看

需要指定两个参数,第一:数据块的首地址,第二:数据块的字节数,如下(&a为首地址, 12为数据块字节数)

(gdb) x/12xb &a
0x7fff5fbff56c: 0x01  0x00  0x00  0x00  0x02  0x00  0x00  0x00
0x7fff5fbff574: 0x03  0x00  0x00  0x00
posted @ 2015-05-18 09:27  阿青1987  阅读(2180)  评论(0编辑  收藏  举报