gdb使用-《软件调试的艺术》读书笔记【chap1-2】

《软件调试的艺术》书中讲了三种工具:gbd;ddd;eclipse。主要还是讲gdb。

chap1预备知识             {20131021}

10204953[4]

1.3.3 部分需要实践中体会

1.7 实践一下

root@ubuntu:/home/debug/chap1# gcc -g -Wall -o insert_sort ins.c   【-g】让编译器将符号表保存在生成的可执行文件中。

只是调试到书中提到的,还需要努力下

13411781

1.8 .gdbint文件没找到,需要单独看下

 

chap2.停下来环顾程序  {20131019}

image本章思维导图

调试器通知程序暂停执行,并能够检查变量,跟踪执行路径。

2.2 GDB的工作针对的是机器语言指令,而不是源代码行。所以当GDB执行到第35行断点时,可以认为GDB是在源代码的第34和35行之间等待。

      GDB可以使用源代码行,是因为可执行文件中包含了额外信息。【mark】

2.4 发现设置断点后没有正好在预期放断点的地方产生断点:编译时使用选项优化了代码;GDB认为这行调试没什么意义。

2.5 示例

imageb是break的简写;设置main和swap函数的断点

image出现注1的情况:因为在任何给定时间,GDB都有一个焦点,将当前的文件看成是“活动”文件;应用list命令后,焦点转移到另一个文件。

                                                             tbreak命令是,设置临时断点

2.6 Q:在不离开GDB的情况下,如何重新编译?【不打开多个tty时】

      所有gdb设置断点,在quit断出后则不存在了,但书上说可以保存断点,是将断点放在源代码所在目录的.gdbinit启动文件中。【mark】我没find到。

2.9 next和step就是相当于f10和f11的区别; continue,finish,until命令的区别没细理解

2.10  break main if argc>2   入参个数大于2的情况,main函数设断点

2.11 commands命令没理解

转载于:https://my.oschina.net/wolflion/blog/169984

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值