C语言程序设计中软件调试主要采取哪些方法

如题所述

程序可以运行并不表示程序就是正确的

编译和连接都正确,只能说明编译器对他进行语法等检查

没发现他的错误而已,而既然运行结果是错误的,那就是说明一点

可能是你的算法设计的不当,不能正确的解决问题,这样发生的错误

是运行期错误,在编译连接的过程不会出错的,不过幸好,编译器也为我们

提供了一些解决类似运行期错误的一些调试工具,通过debug,进行单步调

试下,观察变量值,看看是不是你想要的等等解决此类问题,具体如何单步

调试见下面:

不过你先要设置断点,然后按下面操作

在VC++6.0中的单步调试:
调试重要的几个键:
F9在当前光标所在的行下断点,如果当前行已经有断点,则取消断点.
F5调试状态运行程序,程序执行到有断点的地方会停下来.
F10单步执行程序.
CTRL+F10运行到光标所在行.
F11和F10的区别是,如果当前执行语句是函数调用,则会进入函数里面.
SHIFT+F11跳出当前所在函数.
步骤:
1,保存为c或c++文件
2,根据断点调试找到错误处。
3,采用F10或F11单步调试找到精确的错误处。其中f10是跳过函数盗用,f11是进入函数体调试。一般是先用f10,确定函数输入输出是否正确(与自己想的一样),如不一样,则用f11进入函数体一步一步调试。
4,在调试过程中,肯定得监视程序中的变量。在vc6.0的右下角有一个watch窗口,专门用来设置监视变量。具体怎样设置自己体会吧。在调试过程中,鼠标轻轻放在变量上也会显示该变量的值
5,vc6.0专门为调试设置了工具箱以方便调试的进行,打开的方法如下。右键——〉在debug(或调试)选择项的勾勾上。ok
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-11-13
这个跟你用什么调试器有一定关系
如果你用VC6.0的调试器,那么可能你的调试手段就会受一定限制,VC下主要就是
单步,步入,堆栈和寄存器的查看,变量的查看,普通断点,条件断点,内存访问断点;
如果你用OllyDbg,那么除了上述手段外,还有硬断点,内存读/写断点等
如果你用windbg的话,手段也很丰富,就是命令多了点,可能需要你去记;

大多数调试器的常用手段就是我上面说的那些了本回答被提问者采纳
相似回答