2009-07-27 75 views

回答

0

程序可以定义一个宏一个 点,稍后删除该定义,然后在此之后提供不同的 定义。因此,在 程序中的不同点,一个 宏可能有不同的定义, 或根本没有定义。

+0

一般对于宏来说是正确的,但问题是关于预定义的宏 – CsTamas 2009-07-27 06:12:35

4

编译器和平台的特定组合的预定义宏的可能来源是Sourceforge的Predef project。他们试图维护所有平台上所有C和C++编译器中所有预定义宏的目录。实际上,他们已经涵盖了GCC的一些平台,以及其他一些编译器。

他们通过认真阅读文档以及一个shell脚本来实现这一目标,该脚本能够指出哪些宏是预先定义的难题:尝试它们。我的理解是,它实际上会尝试每个可以在编译器和/或预处理器的可执行映像中找到的字符串,以查看它是否具有预定义的含义。

他们会很高兴地将他们尚未拥有的任何信息添加到他们的数据库中。