C/C++编译系统编译文件的过程称为预处理、编译、链接。预处理器在在程序源文件被编译之前根据预处理指令对程序源文件进行处理的程序。预处理指令以#号开头标识,末尾不含分号。C/C++提供的预处理功能主要包括文件包含、宏替换、条件编译等。
1、预定义符号
FILE :代表进行编译的源文件名
LINE :文件当前的行号
DATE :文件被编译的日期
TIME :文件被编译的时间
STDC :如果编译器遵循ANSI C,其值为1,否则未定义
#include <stdio.h>
#include <stdlib.h>
int main()
{
printf("file:%s\n,line:%d\n,time:%d\n,date:%d\n", __FILE__, __LINE__, __TIME__, __DATE__);
system("pause");
return 0;
}
2,#define
使用#define指令,你可以把任何文本替换到程序里面,通常把这种实现称为宏或者定义宏,下面是标准的宏声明方式:
#define name(参数列表) stuff
参数列表的左括号必须与name紧挨,否则参数列表将会被解释为stuff的一部分,分析下面这个程序