C ++函数调用路由解析器

时间:2010-03-22 18:04:26

标签: c++ windows code-analysis

我正在寻找一种能够告诉/解决所有呼叫路径(称之为“路由”)的每个功能的工具。

例如:

void deeper(int *pNumber)
{
 *pNumber++;
}
void gateA(int *pNumber)
{
 deeper(pNumber);
}
void gateB(int *pNumber)
{
 gateA(pNumber);
}

void main()
{
 int x = 123;
 gateA(&x);
 gateB(&x);
}

请参阅? 我需要一个工具,告诉我更深层次的所有路线(),如果可能的话,还需要更多。

通过说“更多”,我的意思是它会告诉我指针是否与提供给调用函数的指针相同。

这将大大节省我的时间。 谢谢!

3 个答案:

答案 0 :(得分:6)

我认为cppDepend具有该功能(以及其他代码分析功能)

答案 1 :(得分:5)

Doxygen会为你做到这一点。它会为你绘制漂亮的继承树,并向你展示所有正在调用(和调用)你的函数的人。

答案 2 :(得分:1)

您可以查看clang analyzer

  

Clang Static Analyzer是源代码分析工具,可以找到C / C ++和Objective-C程序中的错误。

我没有尝试过,但是看一下代码审查的截图,它可能很有用