关闭

gdb入门命令

标签: gdb
141人阅读 评论(0) 收藏 举报
分类:

gdb入门命令

这是gdb的入门指令,我本人也是新手,想通过写博客来提高自己的能力,希望能帮助到有需要的人,也希望有人可以指导。
我觉得学习gdb就要多练,不练的话话很快就会忘记那些命令,所以在这里列出这些命令是想大家一起,遇到想知道的命令就去谷歌。

简单命令一:

  • start:停在main函数后的第一条语句;
  • b (break):b+行号或者函数名,设置断点;
  • r (run):运行函数,如果没有其它设置,和普通的运行一样,设置了断点会停在断点处;
  • bt (backtrace): 查看各级函数调用及参数;
  • f (frame): 选择栈帧;
  • finish: 结束当前函数;
  • i (info) locals: 列出当前函数的局部变量;
  • l (list):列出源代码,从main开始,每次10行,可以用l 1 从文本开始处开始;
  • n (next):执行下一条语句,如果是函数调用,不进入函数;
  • s (step):执行下一条语句,进入函数;
  • p (print):打印变量,包括数组;打印时可以使用C的运算符,如sizeof(i),(int)a
  • q (quit):退出调试;
  • set var:修改变量的值(eg:set var sum = 0);

简单命令二:

  • break:break 可以加条件,break … if…
  • info b:列出断点;
  • delete breakpoint 断点号:删除断点;
  • disable breakpoints 断点号:禁用断点;
  • enable 断点号:启用断点;
  • c (continue):继续执行,遇到断点停下来;
  • display 变量:跟踪变量,每次停下来都显示它的值;
  • undisplay 变量:取消跟踪;

简单命令三:

  • watch :设置观察点,当观察点的值改变时,程序停下来;
  • info watchpoints:列出当前观察点;
  • x:打印储存单元信息(x/7bx:7表示打印七组,b :表示每个字节一组,x表示十六进制表示;
  • p *a@n:打印以指针为首地址的数组,n代表数组元素个数。
  • ptype a:打印一个变量的类型。
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:2594次
    • 积分:159
    • 等级:
    • 排名:千里之外
    • 原创:14篇
    • 转载:1篇
    • 译文:0篇
    • 评论:0条
    文章分类