1、#define
#define MAX(a,b) ((a) > (b)?(a) : (b))
...
x=5;
y=8;
z=MAX(x++,y++);
printf("x=%d,y=%d,z=%d\n",x,y,z);
打印结果:x=6,y=10,z=9;
2、#undef
该条预处理器指令用于移除一个宏定义
3#if条件编译
3.1语法形式:
#if constant-expression
statements
#endif
3.2是否被定义
#if defined[symble]
#ifdef symble
#if !defined[symble]
#ifndef symble
例如:
#if defined(OS_UNIX)
#ifdef OPTION1
unix_version_of_option1();
#endif
#ifdef OPTION2
unix_version_of_option2();
#endif
#elif defined(OS_MSDOS)
#ifdef OPTION2
msdos_version_of_option2();
#endif
#endif
4、#error
语法格式:#error text of error message
阅读(1610) | 评论(0) | 转发(2) |