C++条件编译
在C++中,在进行编译时对源程序中的每一行都要编译,但是有时希望程序中某一部分内容只在满 足一定条件时才进行编译,也就是指定对程序中的 一部分内容进行编译的条件,如果不满足这个条 件,就不编译这部分内容,这就是条件编译。
条件编译命令常用的有以下形式:
#ifdef 标识符
程序段1
#else
程序段2
#endif
上述条件编译的作用是当所指定的标识符已经被#define命令定义过,则在程序编译阶段只编译程序段1,否则编译程序段2,#endif用来限定#ifdef命令的范围,其中#else部分也可以不写。
#if 表达式
程序段1
#else
程序段2
#endif
上述条件编译的作用是当指定的表达式值为真时就编译程序段1,否则编译程序段2。
经典案例:在C++中使用条件编译。
#include<iostream>//预处理
#define NOTES//在调试时使之为注释行
using namespace std;//命名空间
int main()//主函数
{
int numX,numY,numZ,area;//定义变量
numX=3;//给numX赋值
numY=2;//给numY赋值
numZ=1;//给numZ赋值
#ifdef NOTES //件编译命令
cout<<numX<<numY<<numZ<<endl;//调试时输出的
#endif //件编译命令
area=numX*numY*numZ;
cout<<area;
return 0;//函数返回值为0
}
执行本程序之后,会输出:
321
6
--------------------------------
Process exited after 1.989 seconds with return value 0
请按任意键继续. . .
更多案例可以go公众号:C语言入门到精通
正文完