一般情况下,源程序中所有的行都参加编译.但是有时希望对其中一部分内容只在满足一定条件才进行编译,也就是对一部分内容指定编译的条件,这就是“条件编译”.有时,希望当满足某条件时对一组语句进行编译,而当条件不满足时则编译另一组语句. 今天看到了 #define后面只跟一个“参数” 定义宏,并在预处理过程中将其替换为空字符串(即删除).这样做主要是为了标记某些内容,使程序阅读者能够清楚标记表明的意义,同时又不影响被编译的源代码.另外,通常这些标记能被条件编译的预处理命令#ifdef.#ifndef检测