条件编译指令:
条件编译最常见的形式:
形式1:#ifdef
#define 标识符 #ifdef 标识符 //程序段1 #else //程序段2 #endif
注释:当标识符已经被定义过(一般是用#define命令定义),则对程序段1进行编译,否则编译程序段2。
标识符就像一个开关一样,故称为编译开关。
形式2:#if
#define a 1 #if 表达式 //程序段1 #elif 表达式2 //程序段2 #else //程序段3 #endif
注释:表达式为1=>编译程序段1;表达式不为1为2=>编译程序段2;
a:编译开关。
形式3:
define 在vs工程属性->C/C++->预处理指令->把你的编译开关所用的关键字加入到预处理定义栏里.
目的:
这种条件编译可以提高C源程序的通用性。如果一个C源程序在不同计算机系统上运行,而不同的计算机又有一定的差异。例如,我们有一个数据类型,在Windows平台中,应该使用long类型表示,而在其他平台应该使用float表示,这样往往需要对源程序作必要的修改,这就降低了程序的通用性。
内容源自:
百度百科
http://baike.baidu.com/link?url=axzkmXmqU3Bx-MnI3i5XIMzCPMX-yNzxP_Sjhu95aq7wnjPTj-u3NzCUN2-UQJbZrlP2fSTQCV4eQGMRCLRDDK
原文:http://www.cnblogs.com/yiii/p/4847444.html