问题标签 [memcheck]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 如果测试程序崩溃,Valgrind 报告是否可信
所以我在一个程序上运行 Valgrind memcheck,但是这样做时程序崩溃了。可能是因为 Valgrind 导致的一些时间问题使执行速度变慢。
但是,我确实收到某种报告,告诉我我在各个地方都失去了记忆。当程序崩溃时,这可以信任吗?我的意思是,如果程序崩溃,我可以假设会有未处理的内存。valgrind 可以看到这种情况并以不同的方式处理此内存吗?
例如,我确实收到了一些“绝对丢失”内存的报告。他们值得信任吗?
c++ - Valgrind 在 16 个块内释放 8 个字节
我正在为课堂上的实验室编写代码,这是使用循环链表进行 OOD 设计的练习。这只是意味着我无法访问一些使用的关键功能。但是,我很困惑,因为尽管我的驱动程序模仿了教授写的驱动程序,但标题中仍然出现 mchk 错误。这是它引用的代码
我在一个类似的问题中看到问题可能是我正在尝试访问已被释放的内存。IE 如果 n 不再存在,如何 n = n->next。我尝试使用当前指针和下一个指针切换到 while 循环,但这使问题变得更糟。该代码在我教授的作业版本中完美运行,我还没有实现我需要的功能。
我给出的确切错误是:
谢谢你的帮助
linux - 看起来行内部 valgrind 错误的 valgrind 故障。如何进行?
我正在尝试在 CentOS 上使用 valgrind 调试内存泄漏。但是,valgrind 失败了。
当我运行这个:
程序运行得很好,除了内存泄漏。
当我运行这个:
valgrind 立即退出。当我这样运行时也是如此:
日志文件有以下几行,其中包括:
这看起来像是 valgrind 中的一个错误。Valgrind 版本:valgrind-3.6.0。您能否建议可能触发此错误的原因?我该如何解决问题并运行 valgrind?
ios - 是否可以在 iOS 模拟器和设备上运行 valgrind?
我需要在一个非常大的项目中调试堆溢出。在使用了 valgrind 之后,它似乎是检测 C 中堆块溢出的完美工具,所以我想用它运行我们的 iOS 应用程序。
我已经在 OS X Yosemite 上从主干构建并安装了 valgrind,并编写了一个带有故意堆溢出的测试程序,并验证了 valgrind 捕获并报告了它们。
现在我想用它在模拟器中运行一个测试应用程序。我读过它可以使用 execl() 在 iOS 模拟器中运行,但是当我这样做时,我在控制台中看到以下错误。
dyld:缺少 LC_DYLD_INFO 加载命令
之后,应用程序将在 dyldbootstrap::rebaseDyld() 中使用 EXC_BAD_ACCESS 崩溃。这里还需要什么吗?Valgrind 现在显然也支持 arm64。是否可以将 valgrind 可执行文件与我的应用程序打包并在设备上运行?
c - valgrind做内存指针运算时如何避免报mem lost?
我在我的软件上使用了 valgrind 的 memcheck;但是我有一个问题:出于某种原因,我们将在存储之前转换 malloced 指针,并在使用时转换回来。就像这样:
memory - 从 cuda-memcheck 的输出中跟踪函数名称
我正在运行cuda-memcheck
调试我的代码,输出如下
是否可以从Host Frame:./nmt [0x53526]
代码中的中断行中看出?如果是这样,我该怎么做?
c++ - C ++ Valgrind错误条件跳转或移动取决于未初始化的值
我的 C++ 代码有问题,因为 valgrind 在下面突出显示的行中给了我错误(条件跳转或移动取决于未初始化的值)。我尝试用空字符串初始化“ type ”,但似乎没有用。非常感谢这里的任何帮助。
提前谢谢了。
南达纳塔尔
c - VALGRIND 无效读取大小为 8,链表,释放节点
我试图找出 Valgrind 抱怨的原因。
如果有人能给我一个提示,以便我能理解为什么我的代码会产生不良行为,我将不胜感激。
我创建了一个结构数组。每个条目都是由结构组成的链表的开头。现在我要释放该结构数组的每个链表的元素。
但是 Valgrind 说:
这似乎是错误的功能
结构如下所示:
我期待着你的帮助。
c - Valgrind,无效读取,fgetc
晚上好大家。
我编写了一个函数,通过分析每个字符来检查来自流的值。如果字符具有特定符号的值,则代码应该在程序中做一些更深层次的事情。
一切正常,但 Valgrind 抱怨使用了 fgetc 函数。我不明白为什么。
下面是我的代码:
如果有人能给我提示 Valgrind 消息的原因是什么,我将非常感激。我没主意了。先感谢您。
c++ - Memcheck - 内存泄漏的未知源模块
我从 C++ 开始,并使用 memcheck 检查我的程序是否存在内存泄漏。
如果(当...)有泄漏,我会得到Unfreed memory allocations remaining
输出,其中使用的new
等malloc
尚未被释放。这些通常伴随着源文件和分配的行号,这样很容易修复。
有时虽然源模块被列为,在我的情况下unknown line:0
调用。new
如果 memcheck 知道已经调用了 to new
,它怎么不知道这是从哪里来的呢?我只是想弄清楚这个问题,这样我就可以知道这些泄漏可能来自哪里。