VERSION_TIMESTAMP在哪里可以找到定义?

时间:2015-11-24 15:40:03

标签: c linux

在:

#define VERSION_TIMESTAMP __DATE__" "__TIME__"\x0"

存在组件:“ __ DATE __ ”和“ __ TIME __

我在哪里可以找到这个的定义?

2 个答案:

答案 0 :(得分:3)

它们在C和implemented in gcc as Standard Predefined Macros中定义:

  

标准预定义宏由相关语言标准指定,因此所有编译器都可以使用它们来实现这些标准。较旧的编译器可能无法提供所有这些。他们的名字都以双重下划线开头。

答案 1 :(得分:1)

定义可以在C标准(来自N1570)中找到:

  

6.10.8.1强制宏

     

1以下宏名称应由实现定义:

     

__ DATE __ 预处理翻译单元的翻译日期:一个字符   形式为" Mmm dd yyyy" 的字符串文字,其中的名称为   月份与 asctime 功能生成的月份相同   如果值小于10,则 dd 的第一个字符是空格字符   翻译日期不可用,是实施定义的有效日期   应提供。

     

...

     

__ TIME __ 预处理翻译单元的翻译时间:一个字符   形式为" hh:mm:ss" 的字符串文字,如同在    asctime 功能。如果没有翻译时间,   应提供实施定义的有效时间。