C语言之实用调试技巧(1)(二)

简介: C语言之实用调试技巧(1)

F9

创建断点和取消断点

断点的重要作用,可以在程序的任意位置设置断点

这样就可以使得程序在想要的位置随意停止执行,继而一步步执行下去

F10

逐过程,通常用来处理一个过程,一个过程可以是一次函数调用,或者是一条语句

F11

逐语句,就是每次都执行一条语句,但是这个快捷键可以使我们的执行逻辑进入函数内部(这是最

长用的)

CTRL + F5

开始执行不调试,如果你想让程序直接运行起来而不调试就可以直接使用

想知道更多快捷键?VS中常用的快捷键_vs快捷键_MrLisky的博客-CSDN博客

调试的时候查看程序当前信息

如果说在你的电脑上F9,F10,F11不起作用,那是Fn这个键的问题,关掉Fn就可以了

或者Fn+F10  Fn+F5  Fn+F9  Fn+F11

3.3.1 查看临时变量的值

在调试开始之后,用于观察变量的值

调试起来点击监视(任意一个窗口即可),看下图3.3.2 查看内存信息     在调试开始之后,用于观察内存信息3.3.3 查看调用堆栈

在VS2013上面,我尝试过,按住F10调试起来,然后点击调试里面有个窗口,然后再点击调用堆栈,我在函数栈帧的创建与销毁那两篇博客已经详细讲到了,大家可以去看一看复习一下,直到出了main函数为止

3.3.4 查看汇编信息

在调试开始之后,有两种方式转到汇编    第一种方式:右击鼠标,选择【转到反汇编】

第二种方式    可以切换到汇编代码

3.3.5 查看寄存器信息

4.多多动手,尝试调试,才能有进步

一定要熟练掌握调试技巧

初学者可能80%的时间在写代码,20%的时间在调试。但是一个程序员可能20%的时间在写

程序,但是80%的时间在调试

我们所讲的都是一些简单的调试

以后可能会出现很复杂调试场景:多线程程序的调试等

多多使用快捷键,提升效率

下面我们来两个实例

看代码

这时候我们如果3,期待输出9,但实际输出的是15

这个阶乘是有错误的,我现在调试起来给大家看会占用文章很多空间,大家下来按照上面的方法尝试一下

在不同的编译器上会有不同的效果,上图已经给大家做了详细的解释

在i  <=  12的时候没有报错,为什么没有报错呢,因为他一直忙着死循环,没时间报错

当然i  <=  14的时候就理所当然的一直死循环,希望大家能够理解

还有一种情况是i  <=  11,出现的情况是没有死循环,但是会报错,原因就是我没有越界,就不构成死循环,就只是报错,希望大家能理解

本章终,下一篇给大家讲最后两个部分,详细支持!!!

目录
打赏
0
0
0
0
68
分享
相关文章
【C语言】VS实⽤调试技巧&(Debug和Release)监视&内存2
【C语言】VS实⽤调试技巧&(Debug和Release)监视&内存
【C语言】VS实⽤调试技巧&(Debug和Release)监视&内存1
【C语言】VS实⽤调试技巧&(Debug和Release)监视&内存
|
8月前
|
C语言使用宏定义实现等级调试输出PRINT_LEVEL
C语言使用宏定义实现等级调试输出PRINT_LEVEL
155 0
C语言调试是开发中的重要技能,涵盖基本技巧如打印输出、断点调试和单步执行,以及使用GCC、GDB、Visual Studio和Eclipse CDT等工具。
C语言调试是开发中的重要技能,涵盖基本技巧如打印输出、断点调试和单步执行,以及使用GCC、GDB、Visual Studio和Eclipse CDT等工具。高级技巧包括内存检查、性能分析和符号调试。通过实践案例学习如何有效定位和解决问题,同时注意保持耐心、合理利用工具、记录过程并避免过度调试,以提高编程能力和开发效率。
58 1
用C语言开发游戏的实践过程,包括选择游戏类型、设计游戏框架、实现图形界面、游戏逻辑、调整游戏难度、添加音效音乐、性能优化、测试调试等内容
本文探讨了用C语言开发游戏的实践过程,包括选择游戏类型、设计游戏框架、实现图形界面、游戏逻辑、调整游戏难度、添加音效音乐、性能优化、测试调试等内容,旨在为开发者提供全面的指导和灵感。
55 2
|
3月前
|
C语言调试
C语言调试
24 0
C语言编译环境中的 调试功能及常见错误提示
这篇文章介绍了C语言编译环境中的调试功能,包括快捷键操作、块操作、查找替换等,并详细分析了编译中常见的错误类型及其解决方法,同时提供了常见错误信息的索引供参考。
【C语言】:VS实用调试技巧和举例详解
【C语言】:VS实用调试技巧和举例详解
63 1
C语言学习记录——调试技巧(VS2019环境下)
C语言学习记录——调试技巧(VS2019环境下)
71 2
C语言实用的调试技巧
C语言实用的调试技巧
59 3