Questions tagged «debugging»

调试是在计算机程序中查找和修复错误的有条不紊的过程。**重要提示:**该标签仅用于有关调试技​​术或调试本身的问题,而不用于请求帮助调试代码。

15
使用IPython进行分步调试
根据我的阅读,有两种方法可以在Python中调试代码: 使用传统的调试器,例如pdb或ipdb。它支持诸如cfor continue,nfor step-over,sfor step-into等命令,但是您没有直接访问IPython shell的权限,这对于对象检查非常有用。 通过将 IPython shell 嵌入代码中来使用 IPython。您可以这样做,然后在您的代码中使用。当您的程序/脚本命中一条语句时,您将进入IPython shell。这允许使用所有IPython好东西对对象进行全面检查并测试Python代码。但是,在使用时,您将无法通过便捷的键盘快捷键逐步完成代码。from ipython import embedembed()embed()embed() 有什么办法可以融合两全其美?即 能够 使用方便的pdb / ipdb键盘快捷键逐步完成代码。 在任何这样的步骤(例如,在给定的语句上),都可以访问成熟的IPython shell。 如在 MATLAB中一样进行 IPython调试: 在MATLAB中可以找到这种“增强调试”类型的示例,在该示例中,用户始终可以完全访问MATLAB引擎/外壳,并且她仍然可以逐步完成代码,定义条件断点等。我已经与其他用户讨论过,这是人们从MATLAB转移到IPython时最想念的调试功能。 在Emacs和其他编辑器中进行IPython调试: 我不想让这个问题过于具体,但是我主要在Emacs中工作,所以我想知道是否有任何方法可以将此功能引入其中。理想情况下,Emacs(或编辑器)将允许程序员在代码上的任意位置设置断点,并与解释器或调试器进行通信,以使其在您选择的位置停止,并在该位置提供完整的IPython解释器。
170 python  debugging  emacs  ipython  pdb 

7
调试器如何工作?
我一直想知道调试器如何工作?特别是可以“附加”到已运行的可执行文件的程序。我知道编译器会将代码翻译成机器语言,但是调试器如何“知道”它所附加的内容?


16
Visual Studio加载符号
我现在正在从事ColdFusion项目一段时间,而Visual Studio至少对于我来说开始表现得很奇怪。 我观察到,当我开始调试时,它构建了项目,启动了部署,部署完成,并且开始为我的项目加载符号。 但这很慢,我不知道为什么它开始执行此步骤。我该怎么办? 此符号加载步骤是否必要?如何禁用它? 在工具->选项->调试->符号对话框中,没有添加符号文件(.pdb)位置。我将项目的调试目录指向下面的字段,然后选中了“仅当符号为....时才搜索上面的目录”复选框。如何设置该对话框以关闭符号加载? 我在“模块”窗口中查看了加载了哪些符号,但对我来说什么也没说。问题是什么?

14
如何调试堆损坏错误?
我正在Visual Studio 2008下调试(本机)多线程C ++应用程序。在看似随机的情况下,出现“ Windows触发了断点...”错误,并指出这可能是由于堆。这些错误不会总是立即使应用程序崩溃,尽管可能会在不久后崩溃。 这些错误的最大问题是它们仅在损坏发生后才弹出,这使得它们很难跟踪和调试,尤其是在多线程应用程序上。 什么样的事情会导致这些错误? 如何调试它们? 欢迎使用提示,工具,方法,启示...。
165 c++  windows  debugging  heap 


14
Xcode调试器不会打印对象,并且在不显示对象时显示nil
当尝试使用来打印对象时po <objectName>,Xcode显示错误,但仅针对一个项目。 错误:无法实现结构:变量<varName>的大小与ValueObject的大小不一致在Execute中出错,无法PrepareToExecuteJITExpression Xcode调试器还会将所有未显示的对象显示为nil(已self排除)(NSLog显示正确的输出,如图中所示)。我不知道该项目出了什么问题。其他所有项目都可以正常工作。 知道会是什么吗?(清洁项目无效。)

7
Visual Studio:如何打破处理的异常?
我希望Visual Studio在发生处理的异常时中断(即,我不只是想看到“第一次机会”消息,我想调试实际的异常)。 例如,我希望调试器在异常处中断: try { System.IO.File.Delete(someFilename); } catch (Exception) { //we really don't care at runtime if the file couldn't be deleted } 我遇到了有关Visual Studio.NET的这些说明: 1)在VS.NET中,转到“调试”菜单>>“异常...” >>“公共语言运行时异常” >>“系统”,然后选择“ System.NullReferenceException” 2)在该对话框的底部,有一个“当引发异常时:”组框,选择“闯入调试器” 3)运行您的方案。当引发异常时,调试器将停止并通过一个类似以下对话框的对话框通知您:“已引发类型为“ System.NullReferenceException”的异常。[中断] [继续]“ 点击[Break]。这将使您进入引起问题的代码行。 但是它们不适用于Visual Studio 2005(“ 调试”菜单上没有“ 例外”选项)。 有谁知道在Visual Studio的“找到此选项”对话框的“ 抛出异常时 ”组框的位置,选项为“ 闯入调试器 ”吗? 更新:问题是我的“ 调试”菜单没有“ 例外”项。我自定义菜单以手动添加它。

18
Python调试技巧
已关闭。这个问题需要更加集中。它当前不接受答案。 6年前关闭。 已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它当前不接受新的答案或互动。 您调试Python的最佳秘诀是什么? 请不要只列出特定的调试器而不必说出它实际上可以做什么。 有关 有什么好的方法可以使我的Python代码首次运行?-讨论最小化错误
164 python  debugging 




6
__FILE __,__ LINE__和__FUNCTION__在C ++中的用法
假设您的C ++编译器支持它们,是否有任何特定的原因不使用__FILE__,__LINE__以及__FUNCTION__出于日志记录和调试的目的? 我主要关心的是为用户提供误导性数据,例如,由于优化而报告错误的行号或功能,或者因此而导致性能下降。 基本上,我可以信任__FILE__,__LINE__并__FUNCTION__以永远做正确的事?

7
如何在Python自己的调试器(PDB)中执行多行语句
因此,我正在运行一个Python脚本,在其中编写以下代码来调用Python的调试器PDB: import ipdb; ipdb.set_trace() (iPython的PDB版本,尽管如此,我认为这没有什么区别;我仅将其用于彩色输出)。 现在,当我进入调试器时,我想执行多行语句,例如if子句或for循环,但是只要输入 if condition: 然后按回车键,我得到错误信息 *** SyntaxError: invalid syntax (<stdin>, line 1) 一个人如何在PDB中执行多行语句?如果不可能,是否有办法解决仍然执行if子句或for循环的问题?

14
如何在树枝模板中使用var_dump变量?
仅显示已获得的内容的视图层模式就可以了,而且一切都很好,但是您如何知道可用的呢?TWIG中是否有“列出所有定义的变量”功能?有没有一种方法可以转储变量? 我通过搜索找到的解决方案是定义一个函数,通过注入一个函数可以使用现有的php调试工具,但是我发现的所有引用都包括这两行漂亮的代码,但是没有在哪里指定放置它们。基于他们需要定义$ loader变量的事实,我尝试了/app/config/autoload.php,但是那里的$ loader类型错误。我在哪里放置用于添加树枝功能的php代码?
156 debugging  twig 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.