预定义宏就是已经预先定义好的宏,我们可以直接使用,无需再重新定义。
ANSI C
规定了以下几个预定义宏,它们在各个编译器下都可以使用:
__LINE__
:表示当前源代码的行号;
__FILE__
:表示当前源文件的名称;
__DATE__
:表示当前的编译日期;
__TIME__
:表示当前的编译时间;
__STDC__
:当要求程序严格遵循
ANSI C
标准时该标识被赋值为
1
;
__cplusplus
:当编写
C++
程序时该标识符被定义。
#include <stdio.h>
int main() {
printf("Line : %d\n", __LINE__);
printf("Date : %s\n", __DATE__);
printf("Time : %s\n", __TIME__);
printf("File : %s\n", __FILE__);
return 0;
}
![](https://i-blog.csdnimg.cn/blog_migrate/275c601d478af7b2a512117c66569590.png)