现在的位置: 首页 > 综合 > 正文

使用宏技巧

2013年03月29日 ⁄ 综合 ⁄ 共 348字 ⁄ 字号 评论关闭

技巧一:把枚举值转换成字符串

#define CaseEnum(a) case(a):LogMsgToFile(#a,id,time)

switch(msg_passed_in){

    CaseEnum(MSG_YouWereHit);

    ReactToHit();

    break;

}

 

技巧二:利用二进制表达式得到编译期常量

#define cat(a,b) a ## b

value=cat(1,2);

 

value=12;

 

##起着连接参数的作用,连接二进制

#define BINARY(a) 0x ## a

 

技巧三:得到一个数组里面的元素个数

#define NumElm(array)( sizeof(array)/sizeof((array)[0]) )

数组占用内存的大小除以第一个元素占据内存的大小得到数组元素个数

 

 

抱歉!评论已关闭.