我有兴趣使用 C 预处理器以外的东西来预处理我的 C 和 Objective-C 源代码。有没有好的替代品?
一个例子是允许一个人在 C 代码中间逃逸到 python 或 perl 片段中,并且片段吐出 C 即然后正常编译。
最佳答案
您可以将 PHP 用作 C 预处理器。优点是:
- 非常相似的语法,所以语法高亮有效。
-
<?
和?>
不在标准 C 中使用(对于非标准 C,唯一被破坏的是返回 min/max 的旧 GCC 扩展运算符) - 它拥有丰富的图书馆。
- 图灵完成了。
- 宏的使用非常明确。 (与偷偷摸摸的 C 预处理器宏相比)
不过,如果要认真使用,则需要让 PHP 打印 #line 指令来调试预处理代码。
<?php include_once "stdio.h"; ?>
int main()
{
<?php
for($i = 0; $i < 20; $i++)
echo 'printf("%d\n", '.$i.');';
?>
}
关于objective-c - C 预处理器的替代品,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/396644/