• 【探索C语言中VS调试技巧】:提高效率和准确性



    前言

    大家好我是艾老虎尤,Visual Studio (VS) 是一款广泛应用于C语言开发的集成发环境,其大的调试功能可以帮助开发者高效地定位和解决中的错误。本文将深入探讨C语言中VS调试器的各种技巧,旨在提供详细和权威的指导,以提高调试效率和精确性,话不多说,我们直接开始。


    1. 什么是bug?

    它真正的意思其实是小昆虫。 其实机器都是因为这位被称为计算机编程之母的女程序员-格蕾丝·霍普。1947年就职于美国海军的她,负责操作马克二号计算机。 而是世界上最早的万用计算机。 某一天这部 计算机不知道为何突然停止了运转。大家排查了很久才发现原来是继电器里卡进了一只 小虫子。 格蕾丝取出了这只小虫子以后, 把它粘在了马克二号的运行日志上并注释史上第一个计算机BUG。

    2. 调试是什么?有多重要?

    所有发生的事情都一定有迹可循,如果问心无愧,就不需要掩盖也就没有迹象了,如果问心有愧,
    就必然需要掩盖,那就一定会有迹象,迹象越多就越容易顺藤而上,这就是推理的途径。
    顺着这条途径顺流而下就是犯罪,逆流而上,就是真相,一名优秀的程序员是一名出色的侦探。

    一名优秀的程序员是一名出色的侦探。
    在这里插入图片描述


    2.1 调试是什么?

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

    2.2 调试的基本步骤

    • 发现程序错误的存在
    • 以隔离、消除等方式对错误进行定位
    • 确定错误产生的原因
    • 提出纠正错误的解决办法
    • 对程序错误予以改正,重新测试

    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 查看汇编信息

    通过调用堆栈,可以清晰的反应函数的调用关系以及当前调用所处的位置。
    在这里插入图片描述


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

    • 一定要熟练掌握调试技巧。
    • 初学者可能80%的时间在写代码,20%的时间在调试。但是一个程序员可能20%的时间在写
      程序,但是80%的时间在调试。
    • 我们所讲的都是一些简单的调试。
      以后可能会出现很复杂调试场景:多线程程序的调试等。
    • 多多使用快捷键,提升效率。

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

    5.1 优秀的代码:

    在这里插入图片描述

    1. 代码运行正常
    2. bug很少
    3. 效率高
    4. 可读性高
    5. 可维护性高
    6. 注释清晰
    7. 文档齐全

    常见的coding技巧:
    8. 使用assert
    9. 尽量使用const
    10. 养成良好的编码风格
    11. 添加必要的注释
    12. 避免编码的陷阱。


    6. 编程常见的错误

    7.1 编译型错误

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

    7.2 链接型错误

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

    7.3 运行时错误

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

    温馨提示:

    做一个有心人,积累排错经验。

    总结

    通过学习本文中介绍的C语言中VS调试器的技巧,开发者可以充分利用其强大的功能,提高调试效率和精确性。无论是初学者还是有经验的开发者,在日常开发中都能够更加高效地定位和解决问题。同时,我们也强调了编写清晰的注释、使用有意义的变量名以及书写易读性高的代码的重要性,以帮助开发者更好地使用调试器。只要掌握了这些调试技巧,开发者就能更加自信地应对各种编程挑战,提升开发效率和代码质量。

  • 相关阅读:
    ubuntu18.04 禁用自带nouveau后重启无法进入系统
    Nginx 报404问题,如何解决
    竞赛 机器视觉目标检测 - opencv 深度学习
    前、后端通用的可视化逻辑编排
    C# 11 中的新增功能
    代码随想录算法训练营day41
    孤网双机并联逆变器下垂控制策略MATLAB仿真模型
    首个集成AI的国产操作系统带来了哪些惊喜
    java基础特别问题
    使用小程序制作一个飞机大战小游戏
  • 原文地址:https://blog.csdn.net/qq_69611919/article/details/133098751