c++ - 追踪内存损坏的具体调试技巧/工具?

标签 c++ debugging memory

我正在编写一个简单的视频编码器来压缩 YUV420p 视频。我注意到,当我使用相同的压缩设置从相同的输入文件重新生成结果文件时,结果文件看起来总是略有不同。没有大的变化,通常只是一些位受到“宇宙射线位翻转”效应的影响。

在我的程序中,我没有使用随机值,因此结果输出应该始终相同。我怀疑我的程序在其分配的内存之外执行读/写操作,这可以解释数据的随机性。

除了常规的调试实践之外,是否有特殊的工具/技巧可以帮助我检测这些恶作剧的原因?

最佳答案

如果在 Windows 操作系统上,您可以尝试 AppVerifier

关于c++ - 追踪内存损坏的具体调试技巧/工具?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8105320/

相关文章:

c# - 从文件服务器调试神秘消失的文件

c - C 程序的堆栈和堆内存

c++ - 函数中有函数原型(prototype)的目的是什么?

c++ - 使用CRTP和Google测试框架的库API

c++ - 这是打开文件进行输入的正确方法吗?

c++ - 静态元组类成员的 constexpr 有链接器错误

Flutter:不同的应用程序图标和应用程序名称取决于发布/生产版本或调试/开发版本?

c++ - 如何在 lldb 上设置 std::string 类型?

java - 如何获取已启动进程的内存使用情况

C++ - 在运行时展开堆栈