还在苦苦敲代码开发APP?你out啦! 试试积木搭建APP吧~

gcc自带内存泄漏、内存越界检测工具 - asan

来源:清泛原创     2021-06-29 19:26:50    人气:     我有话说( 0 人参与)

asan内存异常检测工具,功能类似valgrind,不过是gcc自带的原生工具,使用起来非常简单,只需要链接时加上 -lasan 即可。(编译选项也可以加上 -fsanitize=address)测试代码如

asan内存异常检测工具,功能类似valgrind,不过是gcc自带的原生工具,使用起来非常简单,只需要链接时加上 -lasan 即可。(加上-fsanitize=address编译选项可以检查出更详细的内存问题,不加也能编译通过也能执行检查

测试代码如下:
#include <iostream>
#include <string.h>
using namespace std;

int main() {
	void* p = malloc(5);
	memcpy(p, "123456", 6);

	return 0;
}
运行结果如下:

报告非常详细,内存异常发生的行号都能看到,也可以识别出来野指针。强烈建议后台服务上线前进行一次内存检查,可以提前避免一些莫名其妙的崩溃问题。

gcc asan valgrind 内存泄漏 内存越界

注:本文为本站或本站会员原创优质内容,版权属于原作者及清泛网所有,
欢迎转载,转载时须注明版权并添加来源链接,谢谢合作! (编辑:admin)
分享到: