#8. 开发工具

当你在写C代码时,八成会对性能和稳定性有很高要求。如果你用gcc编译代码,很有可能对以下这些GNU工具感兴趣:

gdb

gdb(GNU Project Debugger,GNU调试器)允许你在程序运行期间研究它的代码。如果你想找出代码中隐蔽的错误,会发现它特别有用。gdb既可以在命令行中使用,也可在Xcode或Guile那样的IDE中使用。

http://sourceware.org/gdb/download/onlinedocs/gdb/index.html

gprof

如果你的程序没有预期的那么快,就有必要分析一下它的性能。gprof(GNU Profiler,GNU分析器)可以告诉你程序中哪个部分是最慢的,这样你就能进行适当优化。gprof会修改程序,修改后的程序在结束时会生成一份性能报告,然后你可以用gprof命令行工具分析它,找到程序的瓶颈所在。

http://sourceware.org/binutils/docs/gprof

gcov

还有一个分析工具叫gcov(GNU Coverage,GNU覆盖率测试工具)。gprof用来检查你代码的性能,而gcov用来检查代码中哪些部分运行了,哪些部分没运行。这在写自动化测试时特别有用,因为你需要保证测试代码覆盖了所有你想覆盖的代码。

http://gcc.gnu.org/onlinedocs/gcc/Gcov.html