本博客
http://blog.csdn.net/livelylittlefish 贴出作者(三二一@小鱼)相关研究、学习内容所做的笔记,欢迎广大朋友指正!
Content
1. gcov是什么?
2. gcov能做什么?
3. 如何使用gcov?
3.1 使用gcov的3个阶段
(1) 编译
(2) 收集信息
(3) 报告
3.2 gcov的选项
(1) -a, --all-blocks
(2) -b, --branch-probabilities
(3) -c, --branch-counts
4. 小结
1. gcov是什么?
- Gcov is GCC Coverage
- 是一个测试代码覆盖率的工具
- 是一个命令行方式的控制台程序
- 伴随GCC发布,配合GCC共同实现对C/C++文件的语句覆盖和分支覆盖测试;
- 与程序概要分析工具(profiling tool,例如gprof)一起工作,可以估计程序中哪一段代码最耗时;
注:程序概要分析工具是分析代码性能的工具。
2. gcov能做什么?
gcov可以统计
- 每一行代码的执行频率
- 实际上哪些代码确实被执行了
- 每一段代码(section code)的耗时(执行时间)
因此,gcov可以帮你优化代码,当然这个优化动作还是应该有开发者完成。
3. 如何使用gcov?
笔者也以gcov的manual页自带的例子为例,代码(没有做任何改动)如下。
filename: test.c
3.1