gdb 打印完整的字符数组

5260阅读 0评论2017-07-19 u0402
分类:LINUX

gdb打印字符数组可以使用以下命令
    p *ppstr@size
其中ppstr为字符数组的名字,size为要打印字符数组的元素个数。
    p *ppstr@10
表示打印字符数组ppstr中的前10个字符串元素。

点击(此处)折叠或打开

  1. Breakpoint 3, _dl_init (main_map=0x7ffff7ffe208, argc=9, argv=0x7fffffffe4c8,
  2.     env=0x7fffffffe518) at dl-init.c:97
  3. 97     call_init (GL(dl_initfirst), argc, argv, env);
  4. (gdb) l
  5. 92     ElfW(Dyn) *preinit_array_size = main_map->l_info[DT_PREINIT_ARRAYSZ];
  6. 93     unsigned int i;
  7. 94
  8. 95     if (__builtin_expect (GL(dl_initfirst) != NULL, 0))
  9. 96     {
  10. 97     call_init (GL(dl_initfirst), argc, argv, env);
  11. 98     GL(dl_initfirst) = NULL;
  12. 99     }
  13. 100
  14. 101     /* Don't do anything if there is no preinit array. */
  15. (gdb) p *argv@10
  16. $13 = {
  17.   0x7fffffffe740 "/home/sft/dpdk/examples/multi_process/l2fwd_fork/build/l2fwd_fork",
  18.   0x7fffffffe788 "-l", 0x7fffffffe78b "2-4", 0x7fffffffe78f "-n", 0x7fffffffe792 "4",
  19.   0x7fffffffe794 "--", 0x7fffffffe797 "-p", 0x7fffffffe79a "3", 0x7fffffffe79c "-f", 0x0}
  20. (gdb) p *env@10
  21. $14 = {0x7fffffffe79f "XDG_SESSION_ID=9442", 0x7fffffffe7b3 "HOSTNAME=238",
  22.   0x7fffffffe7c6 "SHELL=/bin/bash", 0x7fffffffe7d6 "TERM=xterm",
  23.   0x7fffffffe7e1 "HISTSIZE=1000", 0x7fffffffe7ef "SSH_CLIENT=100.7.16.232 53558 22",
  24.   0x7fffffffe810 "SSH_TTY=/dev/pts/8", 0x7fffffffe823 "USER=root",
  25.   0x7fffffffe82d "LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01"..., 0x7fffffffedc9 "PQOS_INSTALL_PATH=/usr/lib/"}
  26. (gdb) s
  27. call_init (env=0x7fffffffe518, argv=0x7fffffffe4c8, argc=9, l=0x7ffff7fd6000)
  28.     at dl-init.c:34
  29. 34     if (l->l_init_called)
  30. (gdb)


上一篇:github开源项目提交代码流程详解
下一篇:vdbench详解及多客户端并发测试