int println(const char* fmt, ...);

该省略号表示,C++编译器只会检查函数的第一个参数的数据类型,不会检查剩下的参数个数和数据类型。

在函数中如果要使用可变参数,需要#include<stdarg.h>,在函数中使用va_list类型和va_start、va_arg、va_end 3个宏读取传递到函数中的参数值。

这几个宏的定义如下(在 ANSI C 中):

type va_arg( va_list arg_ptr, type );// va_arg函数将返回 arg_ptr 所指位置的值,并将 arg_ptr 指向下一个参数

void va_end( va_list arg_ptr );

void va_start( va_list arg_ptr, prev_param );将参数arg_ptr设置为可变参数列表的第一个参数。

代码如下

#include<cstdarg>
#include<iostream>
using namespace std;int add(int pre,...)
//求和函数
{va_list arg_ptr;int sum=0;int nArgValue;sum+=pre;va_start(arg_ptr,pre);do{nArgValue=va_arg(arg_ptr,int);sum+=nArgValue;       }while(nArgValue!=0);
//自定义结束条件是输入参数为0va_end(arg_ptr);return sum;
}
int main()
{cout<<add(1,2,3,0)<<endl;
//必须以0结尾,因为参数列表结束的判断条件是读到0停止return 0;
}

C++函数参数省略号相关推荐

  1. java函数参数 省略号_[转] java使用省略号代替多参数.pdf

    [转] java使用省略号代替多参数.pdf 还剩 7页未读, 继续阅读 下载文档到电脑,马上远离加班熬夜! 亲,喜欢就下载吧,价低环保! 内容要点: J2SE 1.5提供了"Varargs ...

  2. 函数参数中带省略号的用法

     [转]函数参数中带省略号的用法 本文摘自CDSN<可变参数学习笔记>,原帖链接:http://topic.csdn.net/t/20041124/09/3582660.html 前言 ...

  3. 不确定函数参数个数时的处理,va_start和va_end使用详解

    引出   在C中,当我们无法确定函数的所有实参的类型和数目时,可以用省略号指定参数表来处理,如: void foo(...); void foo(parm_list,...);   具体怎么使用呢,我 ...

  4. C/C++语言函数参数里的“...”作用,va_list的使用(stdarg.h)

    以Linux "man 手册"里的printf函数声明为例,谈谈我对C语言函数的可变参数的一点理解. printf的函数声明如下:int printf(const char *fo ...

  5. ioctl 函数 参数 详解

    2019独角兽企业重金招聘Python工程师标准>>> ioctl 函数 参数 详解 2009-04-24 11:55 ioctl函数 本函数影响由fd参数引用的一个打开的文件. # ...

  6. C 求函数参数的平均值

    1.题目 使用可变参数,实现函数,求函数参数的平均值. 2.程序代码 #define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h> #includ ...

  7. Go 学习笔记(65)— Go 中函数参数是传值还是传引用

    Go 语言中,函数参数传递采用是值传递的方式.所谓"值传递",就是将实际参数在内存中的表示逐位拷贝到形式参数中.对于像整型.数组.结构体这类类型,它们的内存表示就是它们自身的数据内 ...

  8. C++ 笔记(13)— 函数(函数声明、函数定义、函数调用[传值、指针、引用]、函数参数默认值、函数重载)

    每个 C++ 程序都至少有一个函数,即主函数 main() ,所有简单的程序都可以定义其他额外的函数. 1. 函数声明 函数声明告诉编译器函数的名称.返回类型和参数.函数声明包括以下几个部分: ret ...

  9. python基础(三元运算+深浅拷贝+函数参数)

    三元运算 三元运算,又称三目运算,主要作用是减少代码量,是对简单的条件语句的缩写. 1 书写格式: 2 result = 值1 if 条件 else 值2 3 即如果条件成立,则将值1赋给result ...

  10. C指针6:指针变量作为函数参数

    在C语言中,函数的参数不仅可以是整数.小数.字符等具体的数据,还可以是指向它们的指针.用指针变量作函数参数可以将函数外部的地址传递到函数内部,使得在函数内部可以操作函数外部的数据,并且这些数据不会随着 ...

最新文章

  1. 占失物,笔记本电脑电池
  2. 在Gridview控件中根据Field Name来取得对应列索引
  3. web图片铺满网页_web单页面实现多个echarts图表铺满整个div(柱状图,折线图,饼形图……)...
  4. Xilinx软硬IP双管齐下解决音视频处理痛点
  5. SAP Spartacus 的基于outlet 的页面扩展
  6. Kalman Filter
  7. leetcode-54 螺旋矩阵
  8. Redis有序集合详解
  9. 关于simulink运行中实时查看数据
  10. mysql 两张大表关联_MySQL的DropTable影响分析和最佳实践
  11. mysql 只开放某个表_MySQL只恢复某个库或某张表
  12. 在计算机网络中通常所说的wlan是指,在计算机网络中,通常所说的WLAN是指()。 - 问答库...
  13. python 取模_中年大叔学编程-Python的基础语法和运算符
  14. 天翼网关 ddns设置_为什么说网关在任何工业物联网解决方案中都很重要?
  15. 区块链开发者平台-u deserved it
  16. 《东周列国志》第三十六回 晋吕郤夜焚公宫 秦穆公再平晋乱
  17. 执行git reset --hard后文件的恢复
  18. 二维小波变换_小波变换完美通俗讲解系列之 (一)
  19. 一次HDFS JN lag延时问题的排查分析后续:RM陡增traffic的来源分析
  20. 配置EF Core的DbContext

热门文章

  1. 微信小程序 自定义控件 数字键盘
  2. C语言判断是否英文字母
  3. 什么是 主机地址 、网络地址
  4. 数据库中平凡函数和非平凡函数,完全函数依赖和部分函数
  5. “朝抵抗力最大的路径上走”
  6. yED Editor Getting Start
  7. 如何限制文件服务器上传文件的速度,怎么设置上传软件文件速度限制
  8. 批量删除取消微博关注
  9. 感人!华为员工累死,同事模仿鲁迅写《纪念胡新宇君》(转贴)
  10. 渗透测试的本质与沉思