C宏与条件编译
条件编译基本概念
- 一般情况下,源代码中所有行都参与编译,但有时希望对部分源代码行只在满足一定条件时才编译,即对这部分源代码行指定编译条件。
- 如下例子,当加上 #define FLAG这一行时,会编译第一个函数,当去掉这一行时,会编译第二个函数。
条件编译实现格式
条件编译应用---防止头文件重复包含
- 如图,如果还没有包含过头文件,则会定义一个宏,如果已经包含过了,则不再包含
一些特殊的宏
- 这些宏可以直接使用
- FILE,宏所在文件的额源文件名
- LINE,宏所在行的行号
- DATE,代码编译的日期
- TIME,代码编译的时间