c 语言学习(卢布射击战略)

      最后更新:2021-12-05 13:48:29 手机定位技术交流文章

      什么是bug?

      虫子以前是虫子的同义词

      下一个是电脑锁

      这必须从一个历史事件开始。

      Grace Murray Harper是“Bug”的创始人,他是美国海军的计算机专家,也是第一个将人类语言纳入计算机程序的专家之一。Herbert取了代表计算机程序错误的“bug”这个名字。 Herbert于1947年9月9日将哈佛Mark II II 编程用于17 00个继电器时,计算机依靠对电流的控制来改变开关,从而实现控制,但它产生了大量的热和光。..事实上,在技术人员运行整个机器时,一个飞蛾被计算机的光和热吸引,触发了计算机的短路,导致它突然停止工作。 当他们寻找理由时,他们发现计算机内一大组继电器的触角之间有一个飞蛾,显然是因为摩托吸引着光和热,然后飞到触角上,然后被高电压击死。 所以在报告中,Herbert在测试报告中,在飞蛾上贴了一根棍,在测试报告中写下,并用“bug”这个词作为“计算机程序中的错误”的词。

      究竟什么是调试?它有多大意义?

      检测和减少计算机程序或电气仪表设备中的程序称为调试(英文:调试/调试)。
      错误的一个过程

      调试有助于我们查找和纠正错误。

      调试的基本步骤

      • 发现程序错误的存在
      • 错误的偏差等值, 消除等 。
      • 确定错误产生的原因
      • 提出更正错误的备选办法
      • 纠正软件错误后重新测试 。

      导言,然后是调试和释放

      • 调试(有时称为调试版本)包含调试信息,但没有做出优化来帮助程序员调试。
      • 发布版本通常称为发布版本,经常进行调整,使软件在代码大小和性能方面是理想的,使使用者能够有效地使用。

      注:

      1. 由于调试包含调试工具,发布版本小于调试版本。

      2. 由于缺乏调试工具,发布版本中的程序无法调试。

      调试环境的准备

      调试和发布版本

      在V. V. V. 的这个地方,我们可以看到,我们可以把它转换成调试器或释放它。

      调试快捷键

      界面被调试。 窗口中没有其他调试 API 。

      这是因为我们必须校准才能看到这些窗户。

      那时我们才意识到 这些捷径就在他们的路上

      常用的调试快捷键

      F5

      开始调试, 通常用于跳转到下一个断点 。

      当我们击中F5时 箭头向这个断点移动 并开始调试

      没有说明或说明,计算机可能直接移动到我们想要调试的地方。


      F9

      创建断点和取消断点
      中断点是有用的,因为它们可以在程序的任何位置设置。
      这将使软件能够暂停它想要的地方,然后一步一步地前进。


      当我们把指针放在这里 击中F9时 有个红色断点
      |
      当然,我们可以点击左边的黑面。


      当我们使用鼠标右键时,我们可以有条件地编辑断点。

      我们可以在某些情况下改变停止断点调试的条件。
      这在循环期间很有用,如果我们有密码的话,那会是很多次了。

      如果我们想监测 i=200 状态, 我们可以将断点条件设置在 i= 200 状态, 转移将在 i= 200 状态停止 。

      F10

      按进程划分的过程是一个常用的术语,用来描述过程的处理过程,它可以是函数调用或声明。

      当我们打F10时, 程序会在单一的语句中被调试, 但我们无法访问此函数 。


      F11

      一次的语句, 每次都是一个语句, 但是这个捷径让我们的行刑逻辑 能够进入函数内( 这是最常用的 ) 。

      F11和F10是相同的,但是当我们调用函数时,我们击中F11,然后我们就可以输入它。


      CTRL + F5

      如果您想要在不调试的情况下运行应用程序,请在不调试的情况下启动。

      当我们击中 ctrl+F5 时,我们建立断点,但程序不会在断点停止;相反,它们会继续运行。

      见关于调试的最新程序信息 。

      查看临时变量的值

      我们有四个监视窗口 输入我们想要调试的变量

      除了监视之外,还有自动化窗口和本地变量。

      随着调试开发,您可以自动替换被监测的变量。

      查看内存信息

      内存信息可以在调试窗口内存中查看,有四个窗口可以让我们访问内存信息。

      我们可以通过&a来观察a在内次你中的地址和存储的信息

      查看调用堆

      我们可以检查窗外的堆叠
      您可以观察堆叠的使用方式 。

      查看汇编信息

      有两种方式

      1. 反转,右键单击鼠标,然后单击。

      2. 调试窗口记录

      收藏显示到底发生了什么

      查看寄存器信息

      使用Debug-Window-存储库检查当前操作环境中登记册使用情况的信息。

      调试案例

      该代码是根据 vs2019 环境汇编的。

      我们发现自己处在死亡循环之中 我们坐着看着它

      许多团体跨越边界,当我们抵达AR[12]时,我们发现AR[12]的价值与i相同,为什么?
      因为他们跨越了i地址 更改了i地址的价值。再向前一步, i=0, 周期就结束了。

      让我们看看储存区是如何使用的。

      以下是储存区的习惯:

      首先利用高地址空间,然后利用低地址空间。

      当下标增加时,数组的地址会从低增长到高。

      当我们访问一个[12]时,数组横跨了三个地址,而一个[12]地址与i相同,因此两个数值都发生了变化。

      N. B. 为什么目前的方法没有出错?
      因为软件处在一个死胡同循环中, 犯错需要死亡循环。

      如何写好守则( 这很容易调试) Name

      优秀的代码:
      1. 代码运行正常
      2. bug很少
      3. 效率高
      4. 可读性高
      5. 可维护性高
      6. 注释清晰
      7. 文档齐全
      大众编码方法包括:
      一. 利用主张(调试)。
      二. 尽可能可行地使用Const(修饰变数只读,无法更新)。
      三,培养一个体面的编码风格
      四. 提出任何必要的评论。
      五,远离程序陷阱

      编程常见的错误

      编译型错误

      直接查看错误提示信息( 完成点击), 然后解决问题 。 或者您可以用经验来做 。 这并不困难 。

      链接型错误

      检查错误提示信息, 在错误信息中识别身份, 主要是在代码中, 然后查找问题所在 。 通常情况下, 身份识别符不存在, 或者拼写错误存在 发现错误提示信息, 在错误信息中识别身份, 主要是在代码中, 然后查找问题所在 。 通常情况下, 身份识别符不存在或者拼写错误存在 。

      运行时错误

      我们会用我们学到的调试技术 解决问题 然后再找出出什么问题

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/14268.html

          热门文章

          文章分类