每天进步一点点,希望的火苗不熄灭。
目录
一、什么是bug?
Bug一词的原意是“臭虫”或“虫子”。但是现在,在电脑系统或程序中,如果隐藏着的一些未被发现的缺陷或问题,人们也叫它“Bug”,这是怎么回事呢?
原来,第一代的计算机是由许多庞大且昂贵的真空管组成,并利用大量的电力来使真空管发光。可能正是由于计算机运行产生的光和热,引得一只小虫子?Bug?钻进了一支真空管内,导致整个计算机无法工作。研究人员费了半天时间,总算发现原因所在,把这只小虫子从真空管中取出后,计算机又恢复正常。后来,Bug这个名词就沿用下来,表示电脑系统或程序中隐藏的错误、缺陷或问题。
相对应,人们将发现Bug并加以纠正的过程叫做“Debug”,意即“捉虫子”或“杀虫子”。这就有了调试的出现。
二、调试是什么?有多重要?
当我们的代码可以跑起来,但运行结果又不是我们所预期的时候,我们总是这边改改,那边改改,希望能达到我们想要的结果,可是经过漫长的时间我们还是一无所获,但又在不经意间我们的代码又可以运行成功了。真的是不知道怎么运行不出来,又不知道为什么可以运行出来。
下面这副图片描述我们就显得特别的形象~~~
三、调试的基本步骤
- 发现程序错误的存在
- 以隔离、消除等方式对错误进行定位
- 确定错误产生的原因
- 提出纠正错误的解决办法
- 对程序错误予以改正,重新测试
四、Debug和Release的介绍。
Debug :通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序;
五、调试快捷键的介绍。
F5 :
启动调试,经常用来直接调到下一个断点处。
创建断点和取消断点 断点 的重要作用,可以在程序的任意位置设置断点。这样就可以使得程序在 想要的位置随意停止执行,继而一步步执行下去。
逐过程,通常用来处理一个过程,一个过程可以是一次函数调用,或者是一条语句。
逐语句,就是每次都执行一条语句,但是这个快捷键可以使我们的执行逻辑进入函数内部 (这是 最长用的)。
开始执行不调试,如果你想让程序直接运行起来而不调试就可以直接使用。
我们在调试时大都是F9和F5搭配使用的。
学会调试之后我们就可以查看程序当前信息:查看临时变量的值、查看内存、查看调用堆栈、查看汇编、寄存器等...
当我们程序运行起来时就可以调试了,我们最常用的其实还是监视窗口。
- 一定要熟练掌握调试技巧。
- 做一个有心人,多多使用快捷键,擅于运用调试积累排错经验,提升效率。
初学者可能80%的时间在写代码,20%的时间在调试。但是一个程序员可能20%的时间在写程序,但是80%的时间在调试。
六、编程常见的错误
1. 编译型错误:语法错误;-------->直接看错误提示信息,双击会跳到对应位置;
2. 链接型错误:标识符名不存在或者拼写错误-------->直接看错误提示信息,一般需要手动来找;
3. 运行时错误:自己写的bug;----------->借助调试,逐步定位解决问题。
注意:运行时错误只有在代码跑起来的时候才会出现,编译型和链接型是在程序跑起来之前出现的。