1

我有一个编译器项目,我想在编译完成后打印 ast

那么我可以使用 graphviz 将这个 ast 打印到 qt(在 c++ 上)面板吗?

注意:我不知道 qt 或 c++ 与 graphviz 之间是否存在绑定,所以如果它不起作用,请帮助我找到替代方案。

谢谢 。

4

1 回答 1

1

我做过一次。gcc 有一个标志来生成 AST 的 .dot 文件。然后可以通过 graphviz 显示此文件。但请注意,AST 是巨大的,除了最小的功能外,它对所有功能的使用都是有限的。

看:

http://digitocero.com/en/blog/exporting-and-visualizing-gccs-abstract-syntax-tree-ast

于 2010-04-21T13:05:50.720 回答