__VA_ARGS__ 可变宏参数

发布时间:2020-07-14 03:43:56 作者:暮色伊人
来源:网络 阅读:1062
#include<stdlib.h>
#include<stdio.h>

#define DEBUG(...) printf(__VA_ARGS__)
#define ERROR(fmt,...) printf(fmt,__VA_ARGS__)

int main() {

    int y = 999;

    //宏展开: printf("Y = %d\n", y)
    DEBUG("Y = %d\n", y);

    //宏展开: printf("a = %d,b = %d,c = %d\n",1, 2, 3);
    DEBUG("a = %d,b = %d,c = %d\n", 1, 2, 3);

    //宏展开: printf("Y = %d\n", y)
    ERROR("Y = %d\n", y);
    //宏展开: printf("a = %d,b = %d,c = %d\n",1, 2, 3);
    ERROR("a = %d,b = %d,c = %d\n", 1, 2, 3);

  ERROR("haah");//宏展开: printf("haah", );; 为了去掉逗号,请使用 ## __VA_ARGS__
    system("pause");
    return 0;
}
推荐阅读:
  1. 将15位身份证补全为18位身份证的算法示例详解
  2. Spring中如何定义Range范围对象

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

va args

上一篇:92、QOS区分式服务配置实验之分类&标记

下一篇:对象的构造(十四)

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》