【发布时间】:2019-11-14 01:52:59
【问题描述】:
我正在编写一个将 Tiny C 代码转换为 Python 代码的转换器,但我需要构建一个预处理器解决方案来替换 #define 并管理编译器 C 指令(#ifdef、#else、#define...)
我选择在 Python 中使用 pcpp 模块,但没有成功...是否可以在完整的 Tatsu 解决方案中找到解决方案?
【问题讨论】:
-
也许您最好针对您使用 pcpp 遇到的问题提出一个具体问题,这是一个实际的 C 预处理器。解析器生成器不会帮助您实现宏预处理器。
-
你说得对,但原始代码不是 C 代码,而是脚本代码,只有预处理器代码,如“#define ...”,语法不是 C。
-
无论如何,宏预处理器不在上下文无关语法的预期用例中。
-
宏预处理器只是编译器的另一种形式,因此所有编译器理论都适用于它们。 @rici。
标签: c-preprocessor tatsu