c语言宏定义特性字符总结

1250阅读 0评论2013-03-06 静飞lv
分类:C/C++

1. # 字符串操作
    例如 #define STR(a, b) printf(#a#b)   函数中 STR(hello, hello to you) 实际上是 printf("hello""hello to you");
2. ##连接符
     例如 #define LINK(a, b, c) a##&&b##&&c  函数中if (LINK(i > 0 , i < 100 , i != 50))  实际是if (i > 0 && i < 100 && i != 50)
3. ...变参
    例如 #define DBUG_ECHO (flag, par...)\
            {\
                    if (flag)\
                        printf(par);\
            }
        在还函数中 DBUG_ECHO(1, "%s %d %d\n", str1, a, b); 实际是
        {
            if (1)
                printf("%s %d %d\n", str1, a, b);
        }
上一篇:I/O缓存
下一篇:iptables命令详解