一、#define和#undef宏细节
宏生命周期从#define开始到#undef结束
# include <stdio.h>
#define BSC //
#define BMC /*
#define EMC */
#define ewaece
#define sizeof
//下面这个编译错误,上面两个可以编译通过
//#define int
int main()
{
<span><span>
</span></span>// BSC mmmm
// BMC daew EMC <span><span class="comment">//注释优先于宏定义被预处理,当展开宏之前注释已经处理完毕,这是再展开宏出现// /**/就会出错</span><span> </span></span>
# define r 1 //#和define之间可以空格,#define不一定要在最开头
#define X 3
#define Y X*2
#undef X
#define X 2
int z = Y;
printf("z = %d\n",z);
return 0;
}
输出:
程序猿之---C语言细节31(#define和#undef宏细节)
原文地址:http://blog.csdn.net/human_evolution/article/details/41455651