1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > 【linux】Valgrind工具集详解(七):Memcheck(内存错误检测器)

【linux】Valgrind工具集详解(七):Memcheck(内存错误检测器)

时间:2022-07-25 19:11:38

相关推荐

【linux】Valgrind工具集详解(七):Memcheck(内存错误检测器)

一、概述

Memcheck是一个内存错误检测器。它可以检测C和C ++程序中常见的以下问题:

1、非法内存:如越界、释放后继续访问;

2、使用未初始化的值;

3、释放内存错误:如double-free(同一内存上执行了两次free)、或者 malloc、new、new[] 与 free、delete、delete[]错配使用

4、memcpy函数(或其它相关函数)中src和dst指针重叠;

5、分配函数时,传递的size参数非法,如果是一个负数;

6、内存泄漏。

像这样的问题很难通过其他方式找到,经常长时间未被发现,然后造成偶然的,难以诊断的崩溃。

二、Memcheck中错误消息的含义详解

1、Invalid read of size 4

含义:非法读取或写入错误。

例子,main.c源码如下

#include <stdio.h>#

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。