程序调试-----跟踪法

作者在 2007-09-29 18:04:00 发布以下内容

跟踪法就是在确定出现问题的段中,根据程序执行的流程一步一步地跟踪,并检查程序的结果是否

与编程所期望的结果相符合.如果出现了在意料之外的结果,则表明程序在这一步或一步之前有问题.

然后,返回可能出现问题的行,检查程序代码,直到找到问题为直.

下面介绍一下,具体怎么实现跟踪法:

1.首先需要确定出现问题的段的范围,可以这样做:

    a:在出现问题的段后插入getch();这条语句,也就是相当于断点的方法.当程序执行到getch();这条语句的时侯,会出现暂停的现象.然后,利用这个暂停的时期观察程序运行的结果.判断程序是否出现问题.有时程序有些数据不会出现在屏幕,可以插入下列语句:getch();printf("%d",data);getch();其中data为要测试的数据.观察数据的结果是否有问题.

    b:a中找到问题出现的截止行,然后就需要确定从那一行开始,就出现了问题.可以这样,在测试行的前面插入getch();printf("%d",data);getch();看一看数据是有异常.如果有就测试上一行是否有问题直到没有问题为止.这说明问题是从这一行开始.

2.确定了问题出现段,然后就一行一行的跟踪.并随时显示程序执行的数据结果.怎么得到测试数据,有以下几点建议:1,当执行的行数不多时,可以在每一行后插入printf("%d",data);getch(); 2,当执行的行数较多的时侯,可以把测试数据写入文件中比如在每一个测试点插入fprintf(fp,"%d",data);然后,再去打开文件观察测试数据.分析数据,得出问题出现的原因.

我的C程序调试经验 | 阅读 2424 次
文章评论,共0条
游客请输入验证码