`
ah_fu
  • 浏览: 228017 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

小记:C/C++中的变长参数

阅读更多
    我们知道可以在一个函数中定义参数个数不定的函数:
     void MyPrint(format, ...);  用三个点就行。

   然而,一个宏函数中怎么使用参数个数不定的功能呢?有两个办法:

  #define MyPrint(format, args...)  printf(format, args)
  #define MyPrint(format, ...) printf(format, __VA_ARGS__)

   GCC同时支持两种风格,而微软的CL.EXE只支持第二种。为兼容性考虑,大家都使用第二种格式吧。
 
分享到:
评论

相关推荐

    源代码·Qt/C++使用小记9

    Qt/C++使用小记9【使用UDP创建连接发送消息/传输单个文件】

    工作小记:企业微信 嵌H5页面 用户权限获取匹配.doc

    ### 工作小记:企业微信嵌H5页面用户权限获取匹配 #### 一、背景与目的 在当前数字化转型的大背景下,企业越来越多地利用移动互联网技术来提升工作效率和服务质量。其中,企业微信作为一种重要的办公协作平台,在...

    BabyMove多媒体早教软件

    小记: 今年小孩正要满2周岁时,我们一家三口回四川农村,小孩看到许多新事物,我指着它们告诉他2-3次,他就记住了。回家后担心他忘了,就用照片让他巩固一下,他非常高兴。 于是就发现这么一个方法,做了这个软件,...

    C++编程小记,经典收藏

    - **设计背景**:在C++中,虚函数的覆盖常常依赖于程序员的自觉性,没有强制手段确保子类正确覆盖基类的虚函数。 - **`override`关键字**: - 当在派生类中声明一个虚函数,并希望明确指出它是对基类中同名虚函数的...

    angleMeasure-master.zip

    测量图像中一点到摄像头中心点的角度,程序主要是参照 https://blog.csdn.net/zmdsjtu/article/details/54729448 中的程序修改的,在使用中只要点击图像上的某点在终端上会输出当前点测量得到的角度。 摄像头的内参...

    我的日常小记:spring以及mybatis最终源码

    在本项目中,"我的日常小记:spring以及mybatis最终源码" 是一个记录了开发者个人编程经验的项目,主要涉及两个核心框架——Spring和MyBatis。这两个框架是Java开发领域中非常流行的技术栈,广泛应用于企业级后端...

    android JSON解析数据 android解析天气预报

    笔者近期做到对天气预报JSON数据解析,在此小记。 天气预报接口:http://wthrcdn.etouch.cn/weather_mini?citykey=101200101 JSON数据如下: { desc: OK, status: 1000, data: { wendu: 14, ganmao: 天气...

    git使用小记1

    Git是分布式版本控制系统,用于跟踪对软件项目中的文件所做的更改。在本文中,作者谭耀武以PublicCMS项目为例,分享了一些基本的Git操作。PublicCMS项目有两个版本,一个是作者fork的版本...

    git使用小记-github1

    git使用小记----作者:谭耀武概述本文以FrameworkBenchmarks为例对git的一些操作进行说明fork版地址:https://github.c

    Vue动态加载图片在跨域时无法显示的问题及解决方法

    小记,就简单写了 。问题:VUE开发时因为要访问后端的接口所以要配置请求转发,如果直接转发全部请求,那么VUE动态绑定的src也会转发到后端,因为图片在前端,所以会收到404 NOT FOUND的报错。 常规的请求转发 在vue...

    双系统安装 小记 历时9小时 过关斩将! Ubuntu19.10 + RUFUS 经验之谈

    Ubuntu镜像下载地址...建议不要使用Ubuntu18.04.3的系统镜像,而是使用其他的版本,例如18.04.1 .4 等等 当然也可以使用本人使用的目前最新版本的19.10. 关于原因: 因为使用3的版本会出现Couldn’t get size: 0x8

    Ant 小记

    NULL 博文链接:https://lk617238688.iteye.com/blog/781595

    C++写的家庭小记账本

    1. **面向对象编程**:C++是一种支持面向对象编程(OOP)的语言,这使得开发者能够将现实世界的问题抽象成类和对象,如“账户”类和“交易”类,使得代码结构清晰,易于维护。 2. **数据结构与算法**:在记账本中,...

    android应用登录模块访问mysql数据库小记.pdf

    在Android应用开发中,构建一个登录模块并连接到MySQL数据库是一项常见的需求,特别是在需要处理用户数据和服务端交互的场景。本文作者通过三个星期的努力,成功实现了这一功能,并在此分享了他的经验与遇到的问题。...

    android开发小记

    NULL 博文链接:https://zfwdl2005.iteye.com/blog/1308748

    1.3.2 通信原理部分知识重温(2) 非线性调制-FM部分(数学理论)

    本文不作为一篇严谨的理论推导文章,仅为博主学习时的随手小记,个人的主观认知为主,以求日后能在较快时间内理清思路,找到当下的学习状态。文章中会尽量避免出现过多公式及推导,如果能有幸给其他朋友带来一些帮助...

    1.3.1 通信原理部分知识重温(1) 线性调制-AM部分(数学理论)

    本文不作为一篇严谨的理论推导文章,仅为博主学习时的随手小记,个人的主观认知为主,以求日后能在较快时间内理清思路,找到当下的学习状态。文章中会尽量避免出现过多公式及推导,如果能有幸给其他朋友带来一些帮助...

Global site tag (gtag.js) - Google Analytics