memory-leaks - Valgrind 显示内存泄漏,但没有发生内存分配

标签 memory-leaks centos valgrind

这是一个相当简单的问题。
在我的学校,我们使用远程 CentOS 服务器来编译和测试我们的程序。出于某种原因,尽管没有使用 malloc,valgrind 总是显示 4096B 泄漏。这里有没有人知道这个问题可能来自哪里?
enter image description here

最佳答案

您的程序调用 printf。这个库可能会为自己的使用分配内存。更一般地说,根据 OS/libc/...,可能会为了启动程序而进行各种分配。
另请注意,在这种情况下,您会看到在退出时仍然分配了一个 block ,并且该 block 是抑制计数的一部分。这意味着 valgrind 抑制文件已经确保此内存不会出现在要检查的泄漏列表中。
总结:没问题。
无论如何,当您怀疑自己有泄漏时,您可以查看泄漏的详细信息,例如它们的分配堆栈跟踪以查看这些是否由您的应用程序触发。

关于memory-leaks - Valgrind 显示内存泄漏,但没有发生内存分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69954902/

相关文章:

Android TextView内存泄漏

.net - .Net 3.5 中的 XML 序列化是否仍然存在已知的内存泄漏?

c++ - 奇怪的段错误和valgrind分析

objective-c - 抑制来自 iOS SDK 的 Valgrind 警告

centos - GLFW3 在 Centos6 上编译崩溃 : issue with docs?

c - Valgrind - 无法理解错误输出

c++ - std::map operator[] 如何导致基本数据类型的内存泄漏?

javascript - 使用 jQuery 加载内容时 IE6 内存泄漏

mysql - 如何解决 CentOS 8 中的 Mysql2 gem 错误?

python - 如何在 python 中的 Django shell 中启用历史记录