VS调试技巧

1.什么是bug?

第一次被发现的导致计算机错误的飞蛾,也是第一个计算机程序错误。

2.调试是什么?

2.1 调试是什么?

调试(英语:Debugging / Debug),又称除错,是发现和减少计算机程序或电子仪器设备中程序错误的一个过程。

2.2 调试的基本步骤

· 发现程序错误的存在
发现错误的存在:
1.程序员自己
2.测试人员
3.用户
· 以隔离、消除等方式对错误进行定位
· 确定错误产生的原因
· 提出纠正错误的解决办法
· 对程序错误予以改正,重新测试

2.3 Debug和Release的介绍

Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。
Release 称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用。
在这里插入图片描述
在这里插入图片描述

3.Windows环境调试介绍

3.1调试环境的准备

在这里插入图片描述
确保选择的是Debug

3.2学会调试的快捷键

F5

启动调试,经常用来直接跳到下一个断点处

F9

创建断点和取消断点
断点的重要作用,可以在程序的任意位置设置断点。
这样就可以使得程序在想要的位置随意停止执行,继而一步步执行下去。
在这里插入图片描述

F10

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

F11

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

CTRL+F5

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

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

3.3.1 查看临时变量的值

在这里插入图片描述

3.3.2 查看内存信息

在这里插入图片描述
在这里插入图片描述

3.3.3查看调用堆栈

3.3.4查看汇编信息

5.一些调试的实例

实例一

在这里插入图片描述
大家可以自己上手调试一下,看看哪里出现问题了呢?

在这里插入图片描述
那我们应该怎样修改代码呢?很简单
在这里插入图片描述

实例二

在这里插入图片描述
这不得不说到数据结构中的
在这里插入图片描述
左图是此程序中栈的方式。

1.栈区内存的使用习惯是先使用高地址处的空间,再使用地地址处的空间
2.数组随着下标的增长,地址是由低到高变化的。
3.如果i和arr之间有适当的空间,利用数组的越界操作就可能会覆盖到i即i与arr[12]共用同一块空间,改变i的值,arr[12]的值也会改变,就可能会导致死循环出现的。

具体请参考**《C陷阱和缺陷》**这本书。

6.如何写出好(易于调试)的代码。

6.1 优秀的代码

  1. 代码运行正常
  2. bug很少
  3. 效率高
  4. 可读性高
  5. 可维护性高
  6. 注释清晰
  7. 文档齐全
    常见的coding技巧:
  8. 使用assert
  9. 尽量使用const
  10. 养成良好的编码风格
  11. 添加必要的注释
  12. 避免编码的陷阱。

6.2 示范:

模拟实现库函数strcpy

普通程序员的代码:5分
在这里插入图片描述
优秀程序员写的代码:8分

在这里插入图片描述

10分代码
在这里插入图片描述

6.3const的作用

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

总结 const 修饰指针变量

  1. const 放在*的左边 意思是:p指向的对象不能通过p来改变了,但是p变量本身的值是可以改变的
    *p = 20;//err
  2. const 放在*的右边 意思是:p指向的对象是可以通过p来改变的,但是不能修改p变量本身的值

7.编程常见的错误

7.1 编译型错误

直接看错误提示信息(双击),解决问题。或者凭借经验就可以搞定。相对来说简单。

7.2 链接型错误

看错误提示信息,主要在代码中找到错误信息中的标识符,然后定位问题所在。一般是标识符名不存在或者拼写错误。

7.3 运行时错误

借助调试,逐步定位问题。最难搞。

  • 11
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 11
    评论
Visual Studio是一款常用的集成开发环境,它提供了许多调试技巧和方法来帮助开发人员快速定位和解决问题。以下是一些常用的Visual Studio调试技巧: 1. 悬停鼠标查看表达式值:在调试过程,你可以将鼠标悬停在代码的表达式上,Visual Studio会显示该表达式的当前值,这对于快速检查变量的值非常有用。[1] 2. 使用Watch窗口:Watch窗口可以让你监视和跟踪变量的值。你可以在Watch窗口添加你感兴趣的变量,并在调试过程实时查看它们的值。[2] 3. 使用条件断点:条件断点允许你在满足特定条件时断程序的执行。你可以在断点设置对话框设置条件,当条件满足时,程序会在该断点处停止执行。这对于调试特定情况下的代码非常有用。 4. 使用调试输出:你可以在代码插入调试输出语句,以便在调试过程输出特定的信息。你可以使用`Debug.WriteLine`或`Trace.WriteLine`方法来输出信息,并在输出窗口查看它们。 5. 使用调试工具:Visual Studio提供了许多强大的调试工具,如调试器窗口、内存窗口、线程窗口等。这些工具可以帮助你深入了解程序的执行过程,并找到潜在的问题。 6. 使用命令窗口:Visual Studio的命令窗口可以让你通过输入命令来自动化调试过程。你可以使用命令窗口执行一些简单的操作,如测试变量的值或执行特定的调试命令。[3] 这些是一些常用的Visual Studio调试技巧,它们可以帮助你更高效地进行调试工作,并节省大量的时间。希望对你有帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xxxflower.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值