我的代码混合了旧代码的不同部分。
我想删除所有从未使用过的函数,以保持代码简单。
Klocwork是工具吗?我该怎么做?
谢谢,
摩西。
答案 0 :(得分:2)
您可以使用-p
或-pg
选项gcc
将代码添加到每个函数的序言和结尾中,以便在程序执行时写入配置文件数据库。工具prof
用于分析-p
和gprof
的输出 - pg
。这些工具生成报告,显示使用的功能,呼叫次数以及每次呼叫花费的时间。配置文件数据库中将缺少未使用的功能。
您还可以使用gcov
来获取实际执行的代码行的报告。从未调用的函数将被执行0次....
答案 1 :(得分:2)
Klocwork将找到未使用的函数/方法。您可以在my.klocwork.com上下载一个特殊的检查包(如果您有一个帐户),它将为您提供这些特殊的检查器。
答案 2 :(得分:1)
我不熟悉Klocwork,但gcc
有警告选项-Wunused-function
,可以检测大多数未调用的函数。 -Wunused-function
是-Wall
的一部分。
答案 3 :(得分:0)
Klockwork没有检测到未调用的函数。它仅用于静态分析。
您可以这样检查:
foo()
{
char *a;
a = malloc(100);
}
bar()
{
char a[100];
}
main()
{
bar();
}
这可能会报告函数foo中的泄漏,这实际上是未调用的。但是,正如schot建议您可以查看编译器选项。