从外部C ++源代码中提取每个变量的声明行

时间:2015-12-12 17:49:22

标签: python c++ parsing

有没有办法解析c ++源代码,并为每个变量获取声明它的行? 您可以忽略全局变量和函数参数,但它必须处理指针和任何用户定义的对象。

类似的东西:

int main(){
    int x = 5,y = 6;
    Car c1(1,2,3);
    return 0;
}

预期产出:

的x,2

Y,2

c1,3

首选它可以在c ++或python中完成,但如果可以用任何其他语言完成它就没问题。

1 个答案:

答案 0 :(得分:1)

C ++是一种非常难以正确解析的语言。声明语法已经足够糟糕了,但是预处理器宏提供了另一堆痛苦。

最强大的方法是使用ctags之类的东西,或使用clang构建代码分析工具。

除此之外,您可以尝试编写正则表达式(除了现在您有两个问题)。