[英]Recursive Descent Parser for C
我正在为C寻找解析器。这就是我需要的:
它可以是项目的一部分,只要它解耦,以便我可以拔出解析器。
是否存在满足这些要求的现有解析器?
如果你不需要C99,那么lcc是一个扣篮:
一个潜在的缺点是lcc
解析器不构建抽象语法树 - 它直接从解析到中间代码。
如果你必须有C99那么我认为tinycc(tcc)是你最好的选择。
稀疏怎么样?
你可以试试TCC 。 它是根据Lesser GPL许可的。
似乎nwcc足以满足您的要求。
这个位置有好的c编译器。 简单易用。 https://github.com/rui314/8cc
GCC在gcc / c-parser.c中有一个。
检查elsa,它使用广义LR算法。
它主要用于C ++,但它也解析C代码。
检查其页面上的“Elsa可以解析多少C?”一节 它说它可以解析大多数C程序,包括Linux内核。
它是在BSD许可下发布的。
这是一个移植到C的递归下降解析器: http : //www.gabotronics.com/resources/recursive-descent-parser.htm
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.