写程序简单一调试就头疼?高手分享C语言调试经验 点击:234 | 回复:0



嵌入式学习中

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:26帖 | 1回
  • 年度积分:0
  • 历史总积分:88
  • 注册:2018年5月13日
发表于:2018-07-21 21:02:45
楼主

写程序简单一调试就头疼?高手分享C语言调试经验

 

很多同学在写C语言时,感觉最难的不是程序怎么写,而是程序写完了怎么调试。程序写出来了,自己检查着没有错误,但一运行却出现一大堆错误,好不容易、好不容易改的没错误了,一运行却不出正确结果,然后又小心恋恋的改动一处,忽然又冒出一大堆错误来,再后来呢,稀里哗啦一阵乱响之后,便“飘然而去”。


今天,我(作者)总结了一些的经验与大家一起交流,如有不当之处肯请大家指正。

 

产生这种情况的原因是基本知识掌握不牢,基本语法掌握不靠,练习做的太少,调试功夫不到家所致。掌握了正确的调试技巧,多多练习,这种情况应该能比较快的解决。更多学习交流可以加Q3472880374

程序的调试非常重要,不只是C语言,对于所有语言来说都是如此,掌握好的调试方法,可以事半功倍。下面说一下程序已经没有编译错误,能够运行,但又得不出正确结果的情况下的程序的常用常见调试方法:

1、追踪方式执行(Trace):一步一步执行,遇到函数调用,追踪到调用函数,一步一步执行。

2、单步方式执行(step):一步一步执行,遇到函数调用,调用语句作为一步执行

3、下断点(breakpoint):设置断点,当程序执行到断点时,程序暂停执行。

4、执行到光标所在处(go to cursor):相当于一个断点。

5、监视(watches):随时监视某些变量或对象值的变化情况。

 

常用常见的就是这五种方法。以上方法适用于程序已经没有编译错误,能够运行,但又得不出正确结果的情况。在程序的调试过程中,监视某些变量或对象值的变化情况是很重要的一部分,前四种执行方式与值的监视配合使用,能准确定位错误所在,可以具体到是哪一行出现错误。


如果怎么调都有编译错误怎么办呢?这是练习做的太少,基础不是太好的缘故。这需要再下点功夫,再多做点练习。程序写多了,当出现一种错误时,就知道大体是什么原因造成的了。网上和教材上有专门论述出错信息及错误处理的文章,个人觉得这类文章大部分不太适合初学者看。


出错信息都是E文,不是太明白怎么办?可以用金山快译翻译一下,尽量避免下次再犯错。




热门招聘
相关主题

官方公众号

智造工程师