
《软件调试的艺术》笔记
文章平均质量分 84
TODD911
热爱计算机
展开
-
《软件调试的艺术》笔记--停下来环顾程序
1.跟踪断电创建的每个断点(包括断电、监视点和捕获点)都标识为从1开始的唯一整数标识符。这个标识符用来执行该断点上的各种操作。调试器还包含一种列出所有断点及其属性的方法。原创 2014-06-08 16:29:42 · 1941 阅读 · 0 评论 -
《软件调试的艺术》笔记--预备知识
1.gcc的-g选项如果要使用gdb进行调试,必须在编译时在gcc中加入-g选项,使用参数 -g 表示将源代码信息编译到可执行文件中。如果不使用-g选项:#include int main(void){ int i = 1; i = i + 1; printf("i = %d\n",i); return 0;}gcc main.cgdb a.out(原创 2014-05-25 18:49:40 · 3146 阅读 · 0 评论 -
《软件调试的艺术》笔记--使用其他调试工具
1.splint2.strace3.ltrace原创 2014-07-01 21:42:47 · 1477 阅读 · 0 评论 -
《软件调试的艺术》笔记--检查和设置变量
1.使用print命令查看变量值使用print命令(简写为p)可以查看变量值。使用如下的程序1进行测试。#include struct node{ int index; struct node* next;};int main(void) { struct node head; head.index = 1;原创 2014-06-21 08:56:48 · 1451 阅读 · 0 评论 -
《软件调试的艺术》笔记--调试多线程程序
下面是于线程相关的GDB命令用法汇总:info threads:给出关于当前所有线程的信息。thread 3:改成线程3.break 88 thread 3 :当线程到达源代码88时停止执行。break 88 thread 3 if i == 2 当线程3到达源代码行88行,并且变量i的值为2时停止执行。对下面的多线程进行调试:#include #include原创 2014-06-21 21:25:44 · 5713 阅读 · 0 评论