Questions tagged «debugging»

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

27
程序仅在发布版本时崩溃-如何调试?
我这里遇到的是“薛定inger之猫”类型的问题-我的程序(实际上是我程序的测试套件,但仍然是一个程序)崩溃了,但仅在以发布模式构建时才出现,并且仅在从命令行启动时才崩溃。通过穴居人调试(即到处都是讨厌的printf()消息),我确定了代码崩溃的测试方法,尽管不幸的是,实际的崩溃似乎发生在某些析构函数中,因为我看到的最后一条跟踪消息在其他执行干净的析构函数。 当我尝试在Visual Studio中运行该程序时,它不会崩溃。从WinDbg.exe启动时也是如此。仅在从命令行启动时才发生崩溃。顺便说一句,这是在Windows Vista下发生的,不幸的是,我现在无法使用XP计算机进行测试。 这将是非常好的,如果我能得到的Windows打印出堆栈跟踪,或一些其他不是简单地结束,如果它已经退出干净方案。关于我如何在此处获取一些更有意义的信息并希望修复此错误,是否有人有任何建议? 编辑:问题确实是由越界数组引起的,我将在本文中对此进行更多描述。感谢大家为发现此问题所提供的帮助!
95 c++  debugging 

7
如何在jsfiddle中调试js
我正在看这个jsfiddle:http : //jsfiddle.net/carpasse/mcVfK/ 可以正常工作,这不是问题,我只想知道如何通过javascript进行调试。我尝试使用调试器命令,但在“源”选项卡中找不到它?知道我该如何调试吗? 小提琴的一些代码: angular.module('app', ['appServices']) .config(['$routeProvider', function($routeProvider) { $routeProvider. when('/home', {templateUrl: 'home.html', controller: HomeCtrl}). when('/list', {templateUrl: 'list.html', controller: ListCtrl}). when('/detail/:itemId', {templateUrl: 'detail.html', controller: DetailCtrl}). when('/settings', {templateUrl: 'settings.html', controller: SettingsCtrl}). otherwise({redirectTo: '/home'}); }]);

6
修复C ++中的分段错误
我正在为Windows和Unix编写跨平台的C ++程序。在窗口方面,代码将编译并执行没有问题。在Unix方面,它将编译,但是当我尝试运行它时,出现了分段错误。我最初的预感是指针存在问题。 有什么好的方法来查找和修复分段错误?

8
如何追踪“双重释放或腐败”错误
当我运行(C ++)程序时,它因该错误而崩溃。 *检测到glibc * ./load:两次释放或损坏(!prev):0x0000000000c6ed50 *** 如何追踪错误? 我尝试使用print(std::cout)语句,但未成功。可以gdb简化这个过程?
95 c++  c  debugging  free 



30
如何解决“等待调试器”消息?
我已经用SDK 2.2将HTC Comet连接到Eclipse。我进行调试构建-应用程序无法运行;尽管它确实已安装在设备上。在设备上,我在彗星屏幕上看到此消息框 等待调试器 应用程序HunyDew(进程com.airvine.hunydew)正在等待调试器附加。 [强制关闭] 而在Eclipse控制台中,我得到了这些消息集 [2010-12-07 01:42:29 - hunydewprj] Android Launch! [2010-12-07 01:42:29 - hunydewprj] adb is running normally. [2010-12-07 01:42:29 - hunydewprj] Performing com.airvine.hunydew.HunyDewAAStartsHere activity launch [2010-12-07 01:42:47 - hunydewprj] Application already deployed. No need to reinstall. [2010-12-07 01:42:47 - hunydewprj] Starting activity com.airvine.hunydew.HunyDewAAStartsHere on device 308730C861BC …


5
仅在“打开”时才运行的“仅调试”代码
我想添加一些仅在调试人员要求时运行的C#“仅调试”代码。在C ++中,我曾经做过类似以下事情: void foo() { // ... #ifdef DEBUG static bool s_bDoDebugOnlyCode = false; if (s_bDoDebugOnlyCode) { // Debug only code here gets executed when the person debugging // manually sets the bool above to true. It then stays for the rest // of the session until they set it …


7
我如何找到C ++中引发异常的位置?
我有一个程序会在某个地方抛出未捕获的异常。我所得到的只是关于引发异常的报告,而没有关于引发异常的信息。对于编译为包含调试符号而不通知我代码中生成异常的地方的程序,这似乎是不合逻辑的。 有什么办法可以说明我的异常来自哪里,因为没有在gdb中设置“ catch throw”并为每个抛出的异常调用回溯?

5
如何在浏览器的调试器中调试动态加载的JavaScript(使用jQuery)?
动态添加的脚本未显示在浏览器的调试器的脚本部分中。 说明: 我需要使用并且已经使用 if( someCondition == true ){ $.getScript("myScirpt.js", function() { alert('Load Complete'); myFunction(); }); } 这样就可以在满足某些条件时动态加载myScript.js。而且只有在加载整个脚本后才能调用myFunction。 但是浏览器没有在调试器的脚本部分显示动态加载的myScript.js。 是否有另一种方法可以实现所有目标,从而使一个人能够在浏览器本身中调试动态加载的脚本?

3
C#调试:[DebuggerDisplay]还是ToString()?
有两种方法可以提高调试信息的有效性,而不是{MyNamespace.MyProject.MyClass}在调试器中查看。 这些是DebuggerDisplayAttribute和ToString()方法的使用。 using System.Diagnostics; ... [DebuggerDisplay("Name = {Name}")] public class Person { public string Name; } 要么 public class Person { public string Name; public override string ToString() { return string.Format("Name = {0}", Name); } } 有什么理由更喜欢另一种吗?有什么理由不做这两件事?纯粹是个人喜好吗?

5
引发并捕获该异常时,不要在该异常时停止调试器
在工具/异常中,我设置了在引发异常时调试器停止的选项。是否被抓住。 如何排除该规则的例外?我的代码中某个地方有一个捕获的异常,它是程序逻辑的一部分。因此,我显然不希望该异常在每次被击中时都停止调试器。 示例:我想忽略第344行的nullreference异常(已捕获)。我想停止其他所有例外


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.