c++ - 从 0X7c90120120e 处的代码调用的用户断点

标签 c++ c visual-studio assembly breakpoints

我正在 VS 中调试我用 C 编写的代码。 出于某种原因,在某些时候它会跳转到带有以下行的程序集窗口:

  int        3

然后会出现一个弹出消息框,其中包含以下消息:

  User Breakpoint Called From Code At  0X7c90120120e

我查看了堆栈,导致它的命令是 MALLOC !

在输出窗口中:

Heap missing last entry in committed range near 22549c0

奇怪的是,当我在收到消息时按 OK,然后按 F5 键继续调试时,一切都100% 正常运行。但是当我尝试执行代码时,我收到一条消息,指出我的项目遇到了一些问题。

我尝试清理我的项目、重建、删除所有断点.. 没有任何效果。

最佳答案

首先感谢大家的评论/回答。

我解决了这个问题。我发现我试图两次释放相同的内存。

我之前没有注意到的原因是“Free”(删除函数)与调试器停止的地方/断点发生的地方(在 malloc 上)不在同一个函数中,也不在同一个文件中。

因此,如果有人遇到同样的问题,请确保您没有多次释放同一内存。

关于c++ - 从 0X7c90120120e 处的代码调用的用户断点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18361170/

相关文章:

c++ - 是否允许引用变量在 C++ 中破坏它们的对象?

c++ - 使用 node-gyp 编译时 CFLAGS 在 Windows 上不起作用

c++ - 在 CLR 控制台项目中链接 C++/CLI 库

c - 在 C 中引用嵌套结构

c++ - 尝试构建使用 CMake 制作的项目时,visual studio 2017 中出现错误 MSB3073

c++ - 将非静态函数分配给C++中的变量

c - for 循环中宏的未定义行为

c - SDL2 如何渲染原始格式的像素?

c# - 在 Visual Studio IDE 中查找 Partial Class 的另一部分?

javascript - 如何将用户关键字添加到 VS2013 TypeScript 语言文本编辑器?