一、介绍
下图总结了由预处理器预定义的几个常见的宏,它们的值是字符串常量或者十进制数字,__FILE__和__LINE__在确认调试出来的来源方面很有用处,__DATE__,__TIME__常常被用于假如版本信息,__STDC__用于那些在ANSI环境和非ANSI环境都必须进行编译的程序中结合条件编译。
注意:前后都是两个'_'字符
二、示例
/*sample.c*/
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
printf("%s\n", __FILE__);
printf("%d\n", __LINE__);
printf("%s\n", __DATE__);
printf("%s\n", __TIME__);
printf("%d\n", __STDC__);
return 0;
}
输出结果:
root@ubuntu:/media/work/test# gcc -o sample sample.c
root@ubuntu:/media/work/test# ./sample
sample.c
8
Dec 8 2014
14:41:36
1
root@ubuntu:/media/work/test#
root@ubuntu:/media/work/test#