实用调试技巧【上篇】

这篇具有很好参考价值的文章主要介绍了实用调试技巧【上篇】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

实用调试技巧【上篇】

🔴本文章是在 Visual Studio 2022(VS2022)编译环境下进行操作讲解


实用调试技巧【上篇】

🥳1. 什么是bug?

实用调试技巧【上篇】
Bug一词的原意是臭虫或虫子。第一代计算机是由许多庞大的真空管组成,并利用大量的电力来使真空管发光。引得一只小虫子Bug钻进了一支真空管内,导致整个计算机无法工作。研究人员费了半天时间,总算发现原因所在,把这只小飞蛾从真空管中取出后,计算机又恢复正常。研究人员就把这只小飞蛾贴到了当天的工作日记上,从此这只小飞蛾名留青史,后来,bug这个名词就沿用下来。
实用调试技巧【上篇】

🥳2.调试有多重要?

所有发生的事都一定有迹可循,如果问心无愧,就不需要掩盖,也就没有迹象了,如果问心有愧,就必须需要掩盖,那就一定会有迹象,迹象越多就越容易顺藤而上,这就是推理的途径
🚨每一次调试都是在破案的过程,每一次调试都是在进步的过程。所以说调试非常非常重要,是每个人都必须熟练掌握的技能
🚨一名优秀的程序员就是一名出色的侦探!

2.1. 我们是如何写代码的?

实用调试技巧【上篇】
老子写代码就是一把梭,爱谁谁,拿起键盘就是干!一时敲代码一时爽,一直找bug,一直…😵‍💫
实用调试技巧【上篇】
🤜从现在开始,我要杜绝这种行为!对不会调试说:打咩!!!🤛

2.2.调试是什么?

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

2.3.调试的基本步骤

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

2.4. Debug和Release的介绍

👉Debug 通常称为调试版本,它包含调试信息,并且不会作任何优化,便于程序员调试程序。
👉Release 称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户更好的使用。
实用调试技巧【上篇】

🙌测试人员测的是Release版本,因为测试人员要站在用户角度来发现问题
实用调试技巧【上篇】
实用调试技巧【上篇】
☝️我们可以看到debug版本下和release版本下程序的大小,因为release版本对程序进行了优化,使得代码大小和运行速度都是最优的

🥳3.Windows环境调试介绍

3.1.调试的快捷键

实用调试技巧【上篇】

🙌F5 --------------开始调试
🙌ctrl+F5 -------开始执行(不调试)
🙌F9 -------------设置断点/取消断点
🙌F10 ----------逐过程
🙌F11 ----------逐语句

🚨如果你的电脑按快捷键没有作用,那么就Fn键+快捷键(Fn ---- 辅助快捷键)
🔴👇F10进入调试👇
实用调试技巧【上篇】
实用调试技巧【上篇】
实用调试技巧【上篇】
实用调试技巧【上篇】
我们可以看到,通过按F10,可以观察到代码在按照你的想法一步一步的执行

👇如果加入一个函数,我们来看一下👇
实用调试技巧【上篇】
实用调试技巧【上篇】
实用调试技巧【上篇】
这时我们发现一步一步的按F10,它并没有进入函数 test()中,而是直接执行完跳过向下进行了

🔴👇这时我们就需要用到 F11逐语句)👇
实用调试技巧【上篇】
实用调试技巧【上篇】
这时我们就进入了 test()函数内部了
🚨Fn10和F11在大部分情况是一样的,都是按照你的想法一步一步执行,但是在遇到函数的时候,F11(逐语句)的密度会更细,不会跳过任何一个细节
🔴有的电脑在按下F5后调试控制台(小黑窗口)会一闪而过,F5虽是开始调试,但是F5是和F9配合使用的,它俩是一对
👇假如还是刚才那段代码👇
实用调试技巧【上篇】
我现在认为32行之后可能出现了问题,前面的代码都没有问题,如果还继续F10(F11)一步一步调试进行,会执行10次之后才能进入第32行,是不是非常麻烦,那如果代码是第5000行出了问题呢,肯定不可能是逐步调试吧!
那我们能不能在进入调试的时候➡️就主动停在第32行等着我直接进去
👇看代码👇
实用调试技巧【上篇】
我们选中这一行,然后按下F9(设置断点)👇
实用调试技巧【上篇】
然后在按F5(开始调试)👇
实用调试技巧【上篇】
前面已经执行完,直接落在第32行了
如果断点不想要了,在按一下F9就取消🔴了
这就是F5和F9配合使用的方式🥰
鼠标点击行数号左面的浅色区域也可以设置断点,再点击就取消,效果是一样的

实用调试技巧【上篇】
但是如果循环是1000次,我认为问题可能出现在循环第300次的时候,难道要按300次吗?手指都会断掉了😄,绝对不可能吧
👇那我们应该怎么做呢👇
鼠标放在🔴上然后右击,点击 条件
实用调试技巧【上篇】
实用调试技巧【上篇】
条件为真才触发,我们把条件设为 i==300,满足条件才触发
实用调试技巧【上篇】
☝️这时断点就变为了 条件断点☝️
实用调试技巧【上篇】
实用调试技巧【上篇】
☝️可以看到 i 循环到300的时候停了下来☝️

🔴还有一种技巧👇
实用调试技巧【上篇】
我们可以加上一句条件判断,然后把断点🔴设在条件语句里,进入调试也 i 也自然会在300停住👇
实用调试技巧【上篇】
🥰这些都是一些技巧,希望大家可以理解🥰
🚨必须动手实践,熟练掌握这项技能!

总结🥰
本文章是在 Visual Studio 2022(VS2022)编译环境下进行操作讲解
以上就是调试技巧上篇内容啦🥳🥳🥳🥳
欲知后事如何,请听下篇分解喽💕💕💕
小的会继续学习,继续努力带来更好的作品😊😊😊
创作写文不易,还多请各位大佬uu们多多支持哦🥰🥰🥰

实用调试技巧【上篇】文章来源地址https://www.toymoban.com/news/detail-406791.html

到了这里,关于实用调试技巧【上篇】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C语言调试实用技巧之 2

    今天也给大家介绍一些调试技巧 1.2.1assert()//断言 用assert代替if语句 提示:assert是宏,不是函数 需要包含的头文件assert.h assert(表达式) 如果表达式为假,程序就会报错:”断言失败“ 如:assert(dest != NULL); 提示: a 在debug版本中,if在任何情况下都会执行,浪费时间

    2024年02月14日
    浏览(35)
  • 【初阶C语言】实用调试技巧(详细介绍)

    Bug一词的原意是“昆虫”或“虫子”;而在电脑系统或程序中隐藏着的一些未被发现的缺陷或问题,人们也叫它“bug”。“Bug”的创始人格蕾丝·赫柏(Grace Murray Hopper),是一位为美国海军工作的电脑专家,也是最早将人类语言融入到电脑程序的人之一。而代表电脑程序出错

    2023年04月09日
    浏览(39)
  • C生万物 | 程序员必备实用调试技巧分享

    本文,我们就来讲讲如何去进行调试, 对于一名优秀的程序员来说,除了要熟练写业务逻辑外,还要学会如何去调试代码,这是至关重要的! 🔰 那我们该如何去调试哪些东西呢?使用什么去调试呢?如何调试呢? —— 让我们带着上面这些问题一起进入调试的学习📖 首先

    2024年02月17日
    浏览(44)
  • Visual Studio 2022 你必须知道的实用调试技巧

    目录 1、什么是bug?  2.调试是什么?有多重要? 2.1我们是如何写代码的? 2.2又是如何排查出现的问题的呢? ​编辑 2.3 调试是什么? 2.4调试的基本步骤 2.5Debug和Release的介绍 3.Windows环境调试介绍 3.1 调试环境的准备  3.2学会快捷键 3.3 调试的时候查看程序当前信息 3.3.1 查看

    2024年02月12日
    浏览(75)
  • 【C++航海王:追寻罗杰的编程之路】探寻实用的调试技巧

    目录 1 - 什么是bug? 2 - 调试是什么?有多重要? 2.1 - 调试是什么? 2.2 - 调试的基本步骤 2.3 - Debug和Release的介绍 3 - Windows环境调试介绍 3.1 - 调试环境的准备 3.2 - 学会快捷键 3.3 - 调试的时候查看程序当前信息 3.3.1 - 查看临时变量的值 3.3.2 - 查看内存信息 3.3.3 - 查看调用堆栈

    2024年04月12日
    浏览(31)
  • Visual Studio实用调试技巧---让你成为高端的程序员

    ​ 💓博客主页:江池俊的博客 👉专栏推荐:✅C语言初阶之路 ✅C语言进阶之路 ✅数据结构探索 💻代码仓库:江池俊的代码仓库 ​🎪 社区:GeekHub社区 ​ 🎉欢迎大家点赞👍评论📝收藏⭐ 🍁 如果觉得博主的文章还不错的话,请点赞👍收藏🌟 三连支持一下博主💞 在计

    2024年02月14日
    浏览(46)
  • 你真的知道怎么使用vs吗?把把手教你实用调试小技巧

    谈到bug,我们知道bug的中文意思是虫子,飞蛾的意思。至于为什么bug一词会用到计算机领域的话得追溯到第一台计算机的诞生。 上面个你看到的就是世界上第一个bug的诞生。它的来源也是非常的有意思,当时世界上的第一台计算机出了故障不能正常的工作,于是工作人员就进

    2024年02月05日
    浏览(33)
  • 手机技巧:分享10个vivo手机实用小技巧技巧,值得收藏

    目录 1. 快速切换应用 2、智能助手Jovi 3. 轻按唤醒屏幕 4. 快速启动相机 5. 分屏功能 6. 手势操作 7. 一键清理 8.忘记密码 9.玩游戏耗电快 10.手机丢失后该怎么办 向右或向左滑动底部的虚拟按键即可。 vivo手机自带智能助手Jovi,可以根据用户的使用习惯,提供个性化的建议和推

    2024年02月02日
    浏览(50)
  • chrome-实用技巧

    重发请求,这有一种简单到发指的方式 选中 Network 点击 Fetch/XHR 选择要重新发送的请求 右键选择 Replay XHR  但是经过实际使用调研,发现它只适用于axios或类似方式使用xhr api,则XHR仍在重放,但是,如果使用新的api fetch,则需要使用其他方法,如下:  此方式还可以直接修改

    2024年02月05日
    浏览(38)
  • Greenplum实用技巧

    gp_segment_id是表中的隐藏列,用来标记该行属于哪个segment节点。因此可以基于该隐藏列进行分组查询,获取每个segment的记录数,从而判断表数据的分布是否均匀或有倾斜。 gp_segment_configuration是一张系统表,它维护包括master、standby在内的所有节点信息。是DBA了解集群最直观的

    2024年02月11日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包