C#基础|Debug程序调试学习和技巧总结

news2024/11/20 20:35:38

哈喽,你好啊,我是雷工!

在程序的开发过程中,可能绝大部分时间是用来调试程序,
当完成了某个功能的编程,都需要调试一下程序,看编程是否存在问题。

01 为什么需要程序调试

无论是电气工程师还是电子工程师,还是软件工程师都少不了调试程序。
电气工程师调试PLC程序,电子工程师调试单片机程序,软件工程师调试软件程序。
所以我们大部分人对调试并不陌生。
当程序结构越来越复杂时,越需要专业的技术来发现问题,快速定位错误,并解决问题。
当衡量一个工程师技术水平时,除了编程水平,还有重要的考量点就是遇到复杂的问题时在调试中定位问题点,并解决问题的能力。

所有调试技术是贯穿项目始末的比较重要的一项工作。

02 如何打断点

2.1、根据现象凭借经验预估程序可能哪里出现了问题,就在哪里打断点。
2.2、如果无法确认可能问题点,可以在程序的入口处打断点。

在这里插入图片描述

03 解决程序错误的步骤

3.1、分析可能出现错误的位置,设置断点。
断点的作用:当程序运行到打断点的位置时会暂停。
断点设置的方法:
方法1:在需要暂停的语句前边双击VS编辑器文本区的最左边。
方法2:鼠标单击要设置断点的那一行,然后按F9。

3.2、启动调试,观察变量变化,定位问题
单击调试按钮,启动调试:F5
单步运行:F11,逐过程运行:F10,停止调试:Shift+F5

04 程序调试总结

4.1、程序调试的思路及详细步骤
A1、设置断点:分析可能出现错误的位置,并设置断点。
A2、调试运行:启动调试,单步运行或逐过程运行。
A3、观察变量:不断地观察特定变量的数值。
A4、分析问题:通过观察变量的数值,定位问题。
A5、修改代码:重新运行,观察BUG是否还存在。

注意:其中上边5个步骤并非严格按照该顺序单次处理,像观察特定变量是需要重复观察的,而且当该变量的观察未发现异常时,还需要更换其他特定变量,继续观察分析,直到将问题发现并解决。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1609640.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

代码随想录阅读笔记-回溯【全排列 II】

题目 给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列。 示例 1: 输入:nums [1,1,2]输出: [[1,1,2], [1,2,1], [2,1,1]] 示例 2: 输入:nums [1,2,3]输出:[[1,2,3],[1,…

七牛云配置,图片上传、查看的使用(备忘)

修改配置文档 修改新创建的空间的地区名 访问设置为 公开,不然会有访问时间限制 检查 上传和查看的链接是否正确。

centos linux 7.9安装php8.2.18不支持mysqli模块,如何解决?

🏆本文收录于「Bug调优」专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&…

钉钉对接T+生成总账凭证

客户介绍: 某餐饮连锁企业是一个专注于特色风味徽州菜的餐饮品牌,总部位于杭州市,其推出的各式特色徽菜深受市场的好评,在杭州本地的餐饮市场中有着很强的竞争力。公司ERP使用用友T系统,通过钉钉管理员工费用报销流程…

【精简改造版】大型多人在线游戏BrowserQuest服务器Golang框架解析(1)——功能清单

1.匿名登录 2.服务连接 3.新手引导 4.随机出生点 5.界面布局 6.玩法帮助 7.NPC会话 8.成就系统 9.成就达成 10.用户聊天 11.战斗&信息展示 12.药水使用 13.副本传送 14.玩家死亡 15.超时断开

【大语言模型+Lora微调】10条对话微调Qwen-7B-Chat并进行推理 (聊天助手)

代码:https://github.com/QwenLM/Qwen/tree/main 国内源安装说明:https://modelscope.cn/models/qwen/Qwen-7B-Chat/summary 通义千问:https://tongyi.aliyun.com/qianwen 一、环境搭建 下载源码 git clone https://github.com/QwenLM/Qwen…

浏览器渲染流程中的 9 个面试点

记得 08 年以前,打开网页的时候一个页面卡死整个浏览器凉凉。 这是因为当时浏览器是单进程架构,一个页面或者插件卡死,整个浏览器都会崩溃,非常影响用户体验。 经过了一代代工程师的设计,现代浏览器改成了多进程架构&…

C++:继承作业题

1. 关于以下菱形继承说法不正确的是( ) class B {public: int b;};class C1: public B {public: int c1;};class C2: public B {public: int c2;};class D : public C1, public C2 {public: int d;};A.D总共占了20个字节B.B中的内容总共在D…

2024物理学、电子电路与通信工程国际学术会议(ICPECCE2024)

2024物理学、电子电路与通信工程国际学术会议(ICPECCE2024) 会议简介 2024国际物理、电子电路与通信工程学术会议(ICPECCE2024)将在深圳隆重举行。本次会议旨在汇聚全球物理、电子电路、通信工程等领域的专家学者,共同探讨最新研究成果和…

《从零开始的Java世界》05异常处理

《从零开始的Java世界》系列主要讲解Javase部分,从最简单的程序设计到面向对象编程,再到异常处理、常用API的使用,最后到注解、反射,涵盖Java基础所需的所有知识点。学习者应该从学会如何使用,到知道其实现原理全方位式…

洛谷 P1131 [ZJOI2007] 时态同步

思路:树形DP 这道题总的来说有点贪心的味道,贪心在我们需要把这个时间点加到哪一条边上。 借用一下一位洛谷大佬的图: 其实这样看出来,如果说越靠近根的那条边加长,其实价值最小,所以我们需要尽量向靠近根…

AbstractQueuedSynchronizer 源码解析

AbstractQueuedSynchronizer 源码解析 文章目录 AbstractQueuedSynchronizer 源码解析一、CAS二、字段分析三、内部类 Node1、CLH 队列2、源码分析 四、内部类 ConditionObject1、字段分析2、方法分析1、await2、signal 五、方法分析1、独占式下的 AQS1、acquire 独占式获取资源…

14.基础乐理-音级、基本音级、变化音级

音级: 乐音体系中的每一个音,都叫 音级。 基本音级: 基本音级是 CDEFGAB 它们七个,在钢琴上使用白键展示的,没有任何升降号、没有任何重升重降号的。 变化音级: 除了 CDEFGAB 这七个音,都叫变化…

面向对象练习坦克大兵游戏

游戏玩家(名称,生命值,等级),坦克,大兵类,玩家之间可以相互攻击,大兵拥有武器,用枪弹和反坦克炮弹,造成攻击不同,坦克攻击值固定,请设…

logisim 图解超前进位加法器原理解释

鄙人是视频作者,文件在视频简介的网盘链接。 找规律图解超前进位加法器与原理解释_哔哩哔哩_bilibili 一句话就是“把能导致进位到这个位置的情况全都穷举一遍。” 穷举情况看图中算式。 视频讲解比较啰嗦。

JavaFX--基础简介(1)

一、介绍 中文官网:JavaFX中文官方网站OpenJFX 是一个开源项目,用于桌面、移动端和嵌入式系统的下一代客户端应用程序平台。openjfx.cn是OpenJFX(JavaFX)的标准中文翻译网站,致力于方便开发者阅读官方文档和教程。https://openjfx.cn/ JavaFX 是一个开…

【一文配置好Python开发环境】Python创建虚拟环境,一键更换国内镜像源

一、使用Python自带的venv创建虚拟环境 首先,确保你的Python安装中包含了venv模块。你可以在命令行中运行以下命令来检查: python -m venv --help进入代码目录,创建一个新的虚拟环境。在命令行中运行以下命令: python -m venv …

Llama 3王者归来,可与GPT-4分庭抗礼,开源模型即将追上闭源模型了?

“有史以来最强大的开源大模型”Llama 3引爆AI圈,马斯克点赞,英伟达高级科学家Jim Fan直言,Llama 3将成为AI大模型发展历程的“分水岭”,AI顶尖专家吴恩达称Llama3是他收到的最好的礼物。 4月18日,AI圈再迎重磅消息&a…

ubuntu22.04下编译ffmpeg和ffplay

Ubuntu22.04 下编译安装 ffmpeg 和 ffplay 一、下载源码包 1.1 官方下载链接:Download FFmpeg 可以手动下载,也可以命令行下载: wget http://www.ffmpeg.org/releases/ffmpeg-7.0.tar.xz 1.2 下载完解压 tar -xvf ffmpeg-7.0.tar.xz…

X-314智能合约:金融创新的强大引擎

💥火爆到烫手的X-314智能合约🔥 X-314智能合约是基于以太坊区块链开发的,具有高度可定制性和灵活性。 ave开单独板块;详细资料已经准备好;对web3感兴趣的大佬货;多交流多指导🤝 ​X-314智能合…