首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

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

2012-03-05 
关于宏定义的困惑#defineINITAIL(a)do{\int__i\for(__i0__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   {   \
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 只作用一行, "\ " 是换行的意思;

热点排行
Bad Request.