-2

我正在实现一个用于源到源转换的概念验证应用程序,并且需要一个带有 API 的 C 解析器来操作/遍历 C 语法树 (AST)。

我尝试过使用clang,但遇到了各种问题,比如无法使用 编译教程libclang、错误的架构等。由于这是一个概念验证应用程序,我将推迟到clang不同的日期。

问题

有哪些软件/库(以任何语言实现)可以解析 C 代码并提供 API,以便我可以在它们之上构建应用程序。我环顾四周,但找不到任何免费的解析器。

我可以使用的平台是 Windows、Mac 或 Linux 上的任何平台,任何用 C/C++/Java/Perl/Python/PHP 编写的解析器都可以工作。

4

1 回答 1

1

您可以尝试ANTLR的可用语法之一。ANTLR 支持创建树遍历器,如果需要,您可以手动遍历/操作 AST。ANTLR V3多种可用的语法,包括 C 预处理器、ANSI C和 GNU C。

于 2013-06-28T20:19:19.973 回答