读书人

关于宏定义的困惑解决方法

发布时间: 2012-03-05 11:54:02 作者: rapoo

关于宏定义的困惑
#define INITAIL(a) do { \
int __i; \
for( __i=0;__i <16;__i++){ \
a[__i]=0x00; \
} \
}while(0)

这个定义能通过但是少做改动就不行

#define INITAIL(a) do { \
int __i; \
for( __i=0;__i <16;__i++)

a[__i]=0x00; \
}while(0)

#define INITAIL(a) do { \

for( int __i=0;__i <16;__i++){ \
a[__i]=0x00; \
} \
}while(0)

这2个都不能通过编译,为什么啊


[解决办法]
任何一行都必须以\结束,不可以有纯空行
[解决办法]
#define 只作用一行, "\ " 是换行的意思;

读书人网 >C++

热点推荐