我有很多可执行文件,我想使用valgrind进行内存检查。
我正在使用以下命令进行内存检查:
valgrind -q ./a1.out
valgrind -q ./a2.out
...
valgrind -q ./a100.out
我必须凝视终端很长时间才能发现我的代码中是否存在任何内存问题。
valgrind可以给我们带来一些价值吗? 该值代表是否存在问题。 和外壳可以操作的价值。这样我们就可以编写一些脚本并自动得出结论,说明可执行文件中存在任何问题。
例如,我想要这样的东西:
exist_problem = valgrind -q ./a1.out
if [exist_problem == no]
printf "ALL PASS\n"
fi
谢谢。
答案 0 :(得分:1)
查看valgrind选项
--error-exitcode=<number> exit code to return if errors found [0=disable]
如果使用memcheck,还可以定义哪些类型的泄漏是错误的:
--errors-for-leak-kinds=kind1,kind2,.. which leak kinds are errors?
[definite,possible]
最后,您还可以将valgrind输出重定向到文件,使用
--error-markers=<begin>,<end> add lines with begin/end markers before/after
each error output in plain text mode [none]
在输出文件中和grep。