valgrind 的简单使用

原创
2012/11/02 15:58
阅读数 558
valgrind 不能用简单的重定向,它自己有它自己的日记输出……
valgrind --tool=memcheck --leak-check=yes --show-reachable=yes
其中 tool 的类型有:
memcheck:检查动态内存的使用
cachegrind:分析系统 cache 的使用
callgrind:类似于 gprof(需要-pg编译参数)

重定向日志:
默认是stderr
--log-fd=fd_num
–指定打印到某个文件描述符
--log-file=filename
–打印到文件,推荐该方法
--log-socket=192.168.0.1:12345
–可以重定向到socket中

valgrind --tool=memcheck --leak-check=full --show-reachable=yes --log-file=result ./ufo

still reachable:指针指向的动态内存还没有被释放就退出了……
definitely lost:检测到内存一定泄漏了,这类错误一定要处理。
possibly lost:可能有泄漏,一般都是中间有二级指针分配的情况会报错。
suppressed:统计了使用valgrind的某些参数取消了的错误。

Invalid write of size 4    ==> 数组越界
展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
0 评论
4 收藏
0
分享
返回顶部
顶部