【发布时间】:2009-07-08 18:37:41
【问题描述】:
C Preprocessor 的维基百科条目指出:
预处理器的语言 指令与语法无关 C,所以 C 预处理器也可以 可独立用于处理其他 文件类型。
如何做到这一点?有什么例子或技巧吗?
编辑:是的,我最感兴趣的是宏处理。即使它可能不可取或不可维护,但知道什么是可能的仍然很有用。
【问题讨论】:
-
预处理器需要做什么?如果只需要宏处理,可以使用m4:gnu.org/software/m4
-
哇,m4?我的意思是.. 认真的吗?我认为这对大多数人来说是一件很容易忘记的事情。现在用在什么地方?我知道的一件事是,它用于编译 sendmail 的 .cf 文件。
-
m4 可能在你运行 configure 时仍然可以使用;制作;进行安装。仔细查看配置。
-
我对 m4 的第一次介绍是它被用于为 gEDA 设计软件制作电子设备电路板封装设计。我认为它仍在那个套件中使用(恕我直言,它是最好的套件之一,并且是开源的)。
-
@dwhall 我昨天听从了你和其他人的建议,并使用 M4 为我正在进行的项目实施了 GL ES/金属混合着色器。在让它工作的过程中,我有两个认识: 1. 我以前使用过 M4(用于 Sendmail),但我讨厌它; 2. 与 C 预处理器等更简单且广泛使用的工具和 ERB 等现代更强大的工具相比,M4 是一个过时的、笨拙的垃圾。
dnl?严重地?我不能提供一个标志来从非输出生产线中去除空格吗?不要让我开始尝试让float3→vec和float3(1.0)→vec3(1.0)工作。
标签: c-preprocessor