valgrind内存检测

valgrind --tool=memcheck ./程序名

memcheck工具可以保证我们正确的内存使用。不加其他参数,valgrind会打印出调用call和malloc的一个概括信息

valgrind --leak-check=full ./程序名

如果alloc和free的数目不同,你需要用选项--leak-check来重新运行程序。这会向你展示所有的没有相匹配的free的malloc/new等调用

       1、对未初始化内存的使用;

       2、读/写释放后的内存块;

       3、读/写超出malloc分配的内存块;

       4、读/写不适当的栈中内存块;

       5、内存泄漏,指向一块内存的指针永远丢失;

       6、不正确的malloc/free或new/delete匹配;

       7、memcpy()相关函数中的dst和src指针重叠。

posted on 2014-10-20 23:31  kangbry  阅读(113)  评论(0编辑  收藏  举报

导航