主题:简单介绍如何调试程序
经常看到论坛有人提问想帮调下程序的,要不就是贴好长一程序上来,说不知道哪错了,想帮忙调试一下。我觉得调试程序这件事还是自己做的好,不然编码能力怎么提高呢?
怎么调呢?
我简单的介绍两种方法:
1、利用编程工具本身
我最常用也最好用的就是‘跟踪’,像VC里按F10、F11进行程序跟踪,跟踪的时候,可以观察变量的变化情况,非常好用。
还有就是设置‘断点’,在需要停下来的地方设一个断点,运行到那个地方,停下来,观察一下变量的情况,在VC里用F9,设置后那一行程序前会有一个小圆圈。
2、利用编程语言
使用断言ASSERT()。这个是个标准C函数,在不同的环境下有不同的定义。但用处差不多,都是断言一个表达式为是否为真。
如果表达式为假,那在那个地方停下来,方便调试。
这是一个专门在调试状态下用的函数,如果软件正式发布,ASSERT()会被删掉。
最后,就是设计方法啦,如果有好的设计方法,调试起来也会容易很多,整个程序分成若干模块,各模块分别测试,最后再整体集中测试,也就是要求模块化的设计程序。
只是一些个人的经验,仅供参考!
怎么调呢?
我简单的介绍两种方法:
1、利用编程工具本身
我最常用也最好用的就是‘跟踪’,像VC里按F10、F11进行程序跟踪,跟踪的时候,可以观察变量的变化情况,非常好用。
还有就是设置‘断点’,在需要停下来的地方设一个断点,运行到那个地方,停下来,观察一下变量的情况,在VC里用F9,设置后那一行程序前会有一个小圆圈。
2、利用编程语言
使用断言ASSERT()。这个是个标准C函数,在不同的环境下有不同的定义。但用处差不多,都是断言一个表达式为是否为真。
如果表达式为假,那在那个地方停下来,方便调试。
这是一个专门在调试状态下用的函数,如果软件正式发布,ASSERT()会被删掉。
最后,就是设计方法啦,如果有好的设计方法,调试起来也会容易很多,整个程序分成若干模块,各模块分别测试,最后再整体集中测试,也就是要求模块化的设计程序。
只是一些个人的经验,仅供参考!