- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当错误消息包含实际地址时,我知道如何创建 .map 文件来跟踪访问冲突错误。
但是如果错误消息显示怎么办
Access violation at address 00000000. Read of address 00000000.
我从哪里开始寻找这个问题的原因......?
最佳答案
接受的答案并不能说明整个故事。
是的,每当你看到零时,就涉及到一个NULL
指针。这是因为NULL
根据定义为零。因此,调用零 NULL
可能没什么意义。
您收到的消息有趣之处在于,NULL
被提及两次。事实上,您报告的消息看起来有点像 Windows 品牌操作系统向用户显示的消息。
该消息显示地址 NULL
尝试读取 NULL
。那么这意味着什么呢?具体来说,地址如何读取自身?
我们通常会想到某个地址处的指令从某些地址的内存中读取和写入。知道这一点可以让我们解析错误消息。该消息试图阐明 地址 NULL
处的指令尝试读取 NULL
。
当然,地址NULL
处没有指令,这就是为什么我们认为NULL
在我们的代码中是特殊的。但每条指令都可以被认为是从尝试阅读自身开始的。如果 CPU EIP
寄存器位于地址 NULL
,则 CPU 将尝试从地址 0x00000000 ( NULL
)。尝试读取 NULL
将失败,并生成您收到的消息。
在调试器中,当您收到此消息时,请注意 EIP
等于 0x00000000。这证实了我给您的描述。
问题就变成了,“为什么我的程序试图执行NULL
地址。”我想到了三种可能性:
NULL
,从未以其他方式初始化,并且正在取消引用。NULL
条目。这些是在您的代码中使用语法 virtual function_name()=0
创建的。ret
指令时,将从覆盖的内存位置加载值 0x00000000 (NULL
)。这种类型的错误(堆栈溢出)是我们论坛的同名错误。既然您提到您正在调用第三方库,我将指出,这可能是该库期望您提供非NULL
函数指针作为某些函数的输入的情况API。这些有时称为“回调”函数。
您将不得不使用调试器来进一步缩小问题的原因,但上述可能性应该可以帮助您解决这个谜题。
关于delphi - 如何追踪访问冲突 "at address 00000000",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2237028/
我正在开发一个网站,在不使用任何第三方 API 的情况下使用 Firebase 云消息传递(Chrome 和 Firefox 浏览器)向我的订阅者发送推送通知。推送通知发送工作正常,但我不知道“如何跟
我在尝试追踪此 OutOfMemoryError 时遇到了非常糟糕的时间,非常感谢您的帮助。我的应用程序分为架构部分和一个模块,该模块公开一些基本的 REST WS 以及 Hibernate 进行的数
在 Android 操作系统源代码中(路径:/drivers/staging/android/binder_trace.h),我们有一个名为 binder_trace.h 的文件,并且在 /drive
我正在查看我的 CakePHP 应用程序的 error.log,并看到我定期收到此类信息: 2011-07-28 14:49:39 Warning: Warning (2): Missing argu
我收到了有关我的应用程序中内存泄漏的报告,但我无法准确追踪到底发生了什么。我有一个功能可以取出旧 View 并交换新 View 。我没有使用 NavControllers 或任何 @propertie
这是真气! >_< 我编写了一个庞大而复杂的 Haskell 库。我写了一个小测试程序,到目前为止,我已经花了大约 8 个小时试图弄清楚为什么它一直在我身上崩溃。有时 GHC 会提示“奇怪的封闭类型”
是否有系统的方法来调试导致组件在 React 中重新渲染的原因?我放置了一个简单的 console.log() 来查看它渲染了多少次,但我很难弄清楚是什么导致组件渲染多次,即在我的情况下(4 次)。是
我已经升级到 Django 1.4,现在当我运行我的开发服务器时,我收到以下警告: /home/flc/venvs/myprj/lib/python2.6/site-packages/django/v
我有一个 Web 应用程序在某处存在内存泄漏,但我无法检测到它。我已经尝试过 Chrome 开发者工具,通常效果很好,但我无法追踪负责的代码行。 Chrome 工具给了我太多信息,我无法将内存中的对象
直接从标记调用函数的好处之一是更容易跟踪所调用的内容。我想知道是否有浏览器插件或其他东西支持附加(绑定(bind))到元素的每个事件的“Goto javascript 源函数”。理想情况下,这会将我带
我在工作中使用 darcs 已经一年多了,但我一直在问自己同样的问题: 跟踪导致两个补丁之间依赖的代码行/文件/代码更改的最佳方法是什么?目前我的做法如下: 我使用 darcs changes -i
我知道以前有人问过此类问题,但我无法解决我的疑问。我有一个简单的黑白棋引擎(实际上它玩得很好),它使用下面的类来获得最佳棋步: import java.util.*; import java.util
上下文:我们正在构建用于快速交付 WPF 应用程序的框架。该框架使用 Autofac 作为 IoC 容器,还使用 Prism v1 中的区域。我们正在使用 Microsoft 的并行扩展来安排任务
有什么追踪东西的技巧吗?技术?任何可用于检查函数 x 的调用者的工具(调用堆栈的某些部分显示为 ??? 或被跳过)。 --track-origins=yes 是否会使速度变慢(当我尝试这样做时,我使用
我有一个基于 KnockoutJS 2.2.1 创建的 jQuery 网格插件。到目前为止它进展顺利,但是当插件在一个元素上初始化时,'computed' loadGrid 方法调用 3 次。 为了说
我是这种开发的新手。我正在尝试创建一个涉及 GPS 跟踪的 android 应用程序。我正在使用 Nutiteq,因为我必须使用 openstreetmap 作为默认 map 。请帮助我。 最佳答案
我希望用户能够通过我的应用程序之一跟踪他们的 friend 。该应用程序适用于音乐节。 我一直在想办法做到这一点: 让用户为设备设置昵称(与 UDID 关联),并让用户通过昵称将彼此添加到“好友列表”
有没有办法找到所有者或域名示例,如果我给谷歌的IP,我的工具发现谷歌的IP,这应该以编程方式完成地址最喜欢的编程语言将是VC++其他语言也不是问题 最佳答案 您正在寻找的关键字似乎是WHOIS 通常可
我的 VC++ 项目中有几个包含大量类的 map ,其中一些默认可构造,另一些则不能。尝试构建时,出现“没有合适的默认构造函数可用”错误。问题是错误被列为发生在 map.cpp 的第 173 行,这是
我平均工作(约 20k 行代码,Objective-C 与 C++ 混合),我正在努力寻找 EXC_BAD_ACCESS 错误。 我已经尝试了所有常见的技术(比如启用 NSZombie、guard e
我是一名优秀的程序员,十分优秀!