什么是预定义宏,顾名思义就是事先已经定义好的宏。有两个特征:
- 1.无需提供它们的定义,就可以直接使用。
- 2.预定义宏没有参数,且不可被重定义。
预定义的宏一般分为两类:标准预定义宏、编译器预定义宏。
常用的几个标准预定义宏有以下几个:
- FILE :在源文件中插入当前源文件名(字符串)
- LINE:在源文件中插入当前源代码的行号(数字)
- DATE:在源文件中插入当前编译的日期(字符串)格式为Mmm dd yyyy
- STDC:当程序要求严格遵循ANSI C标准时该标识被赋值为1
- TIME:在源文件中插入当前编译的时间(字符串)格式为hh:mm:ss。
- TIMESTAMP:当前代码文件的最后修改日期和时间,字符串格式为Ddd Mmm Date hh:mm:ss yyyy, 其中Ddd为星期的缩写,Date是从1~31的整数。
- FUNCTION:包含当前运行的函数的函数名