这旨在作为一个通用问题,以帮助遇到程序问题但不知道如何使用调试器诊断问题原因的新程序员。
该问题涵盖三类更具体的问题:
调试器是可以在程序运行时检查程序状态的程序。它用于执行此操作的技术手段对于理解如何使用调试器的基础并不重要。您可以使用调试器在程序到达代码中的特定位置时暂停程序的执行,然后检查程序中变量的值。您可以使用调试器非常缓慢地运行程序,一次检查一行代码(称为单步执行),同时检查其变量的值。
使用调试器是预期的基本技能
调试器是一种非常强大的工具,可帮助诊断程序问题。调试器可用于所有实用的编程语言。因此,能够使用调试器被认为是任何专业或发烧级程序员的基本技能。并使用调试器自己 被认为是基本的工作,你应该做你自己问别人的帮助了。由于此站点是针对专业和发烧级程序员的站点,而不是帮助台或指导站点,因此,如果您对特定程序的问题有疑问,但没有使用调试器,那么很可能会关闭并拒绝您的问题。如果您仍然遇到类似的问题,最终将阻止您发布更多信息。
调试器如何帮助您
通过使用调试器,您可以发现变量是否具有错误的值,以及在程序中变量的值更改为错误的值的位置。
使用单步执行,您还可以发现控制流是否符合您的期望。例如,if分支是否应按预期执行。
有关使用调试器的一般说明
使用调试器的细节取决于调试器,并且在较小程度上取决于您使用的编程语言。
您可以将调试器附加到已经在运行程序的进程中。如果程序卡住,您可能会这样做。
实际上,从一开始,在调试器的控制下运行程序通常会更容易。
您可以通过指示应停止执行的行的源代码文件和行号,或通过指示程序应停止执行的方法/函数的名称,来指示程序应在何处停止执行(如果要以执行立即进入该方法)。调试器用来导致程序停止的技术手段称为断点,而此过程称为设置断点。
大多数现代调试器都是IDE的一部分,并为您提供了一个方便的GUI,用于检查程序的源代码和变量,并带有单击界面,用于设置断点,运行程序并单步执行。
除非程序可执行文件或字节码文件包含调试符号信息和对源代码的交叉引用,否则使用调试器可能非常困难。您可能必须稍微不同地编译(或重新编译)程序,以确保存在信息。如果编译器执行了广泛的优化,则这些交叉引用可能会造成混淆。因此,您可能不得不在关闭优化的情况下重新编译程序。
使用指南 - 数据报告 - 优化分析 - 网站速度诊断能帮助您发现什么问题 网站打开较慢有两方面因素: 1、网站自身原因,这部分原因可以通过页面优化以及相应设置予以改善。 2、网络运营商自身原因或网站服务器提供商的原因,在排除非自身网站问题后,通过运营商之间的对比,以及网站间对比去及时发现服务提供商的问题。 下面将对百度统计智能分析几种关注的几类问题予以说明: 1、连接网络:在页面打开过程中,连接
本文向大家介绍什么是Babel,它将如何帮助您编写JavaScript?,包括了什么是Babel,它将如何帮助您编写JavaScript?的使用技巧和注意事项,需要的朋友参考一下 Babel是一个工具链,主要用于在当前和较旧的浏览器或环境中将ECMAScript 2015+代码转换为JavaScript的向后兼容版本。Babel的插件允许您立即使用新语法,而无需等待浏览器支持。 使用babel J
问题内容: 我现在正在阅读J2EE 1.4规范,有很多我不明白的术语会做什么。这是从容器规范中得出的: 容器为J2EE应用程序组件提供运行时支持。容器为应用程序组件提供了底层J2EE API的联合视图。J2EE应用程序组件从不与其他J2EE应用程序组件直接交互。他们使用容器的协议和方法相互之间以及与平台服务进行交互。在应用程序组件和J2EE服务之间插入一个容器可以使该容器透明地注入由组件的部署描述
问题内容: 我是Java的新手,刚刚遇到了在方法中使用“ Throws”关键字的教程。我对此进行了一些研究,但仍然不太了解。 从我到目前为止所看到的,它告诉编译器在该特定方法中可能抛出某些异常。为什么我们需要告诉编译器呢?我已经在我的方法中仅使用try- catch语句制作了许多程序,并且效果很好-当然,这些try-catch语句可以管理异常,对吗? 问题答案: 您可以使用和如您所说 在 方法 内
Composer默认使用Winston日志记录模块,并使用Config模块查找任何配置信息。如果没有找到,那么将使用一组默认值。 如果没有设置配置文件,配置模块会写出警告。例如。WARNING: No configurations found in configuration directory。如果您对默认值感到满意,并且不希望在应用程序中使用配置,则可以使用环境变量来抑制这种情况。在这里查看更
问题内容: 在Java / C#中,您可以轻松地逐步执行代码以查找可能出了问题的地方,而IDE使此过程非常人性化。 您能以类似的方式跟踪python代码吗? 问题答案: 是! 有一个Python调试器pdb就是为了这样做! 你可以pdb使用或通过启动Python程序。 你可以执行一些命令,这些命令已在pdb页面中记录。 需要记住的一些有用的是: b:设置一个断点 c:继续调试,直到遇到断点 s:单