1. gdb内置了打印c++数组的操做,html
若是 a 为数组指针, 大小为 10linux
则 c++
p *a@10
或者shell
p (int [10])*a
其中第2种,大小指定只能是常数,使用 b.length+1 这种表达式就不能够,第1中能够在 @ 符号后面跟上表达式vim
若是须要打印 STL 提供的容器,推荐别人使用的脚本,拷贝到本身主目录下的 .gdbinit 文件里便可。脚本在这个 gdb turtorial 最后有提到,这个 tutorial 也写得很好,我日常都当作速查手册来用。数组
2. gdb环境下从新编译装载spa
相似于 vim,输入 shell 命令能够暂时退出gdb,而后 make 编译程序,随后用 exit 能够退回到 gdb 环境里。指针