社区
C++ 语言
帖子详情
C++中带省略号的参数叫甚么名字来着的?
ty263
2006-11-08 01:54:38
比如printf的声明:
int printf(const char *format [,argument]... );
参数的这种用法叫甚么名字?
...全文
378
10
打赏
收藏
C++中带省略号的参数叫甚么名字来着的?
比如printf的声明: int printf(const char *format [,argument]... ); 参数的这种用法叫甚么名字?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
taodm
2006-11-09
打赏
举报
回复
在C++里,可以取代大部分变参需求。
想想,cout << i << j << k。。。。不也是变参了么。
不过,其实现技术稍微麻烦了点。
kenneth_lueng
2006-11-08
打赏
举报
回复
省略号表示“还可能有另外一些参数”
一般来说,只有在那些参数数目和参数类型都有变化的情况下才需要省略号
楼上的
va_list ap;
va_start(ap, i);
...
va_arg(...);
...
va_end(ap);
是必需的;
va_arg()用于按顺序提取出各个无名参数。
va_start()可能会修改了堆栈,这种修改可能导致返回无法完成
va_end()能将有关的修改复原
e_ville
2006-11-08
打赏
举报
回复
变长参数列表。示例程序如下:
// var_arg.cpp -- Using variable-length argument lists
// 2006-07-29 12:46
#include <iostream>
#include <iomanip>
#include <cstdarg>
using namespace std;
double average(int i, ...);
int main() {
double w = 37.5, x = 22.5, y = 1.7, z = 10.2;
cout << "Average of w, x: \t" << average(2, w, x) << endl;
cout << "Average of w, x, y: \t" << average(3, w, x, y) << endl;
cout << "Average of w, x, y, z: \t" << average(4, w, x, y, z) << endl;
return 0;
}
double average(int i, ...) {
double total = 0.0;
va_list ap;
va_start(ap, i);
for(int j = 1; j <= i; j++)
total += va_arg(ap, double);
va_end(ap);
return total / i;
}
Jim_King_2000
2006-11-08
打赏
举报
回复
当然可以不同。但是对变参不提供类型检查,我们还是少用为妙,除非万不得已。
ty263
2006-11-08
打赏
举报
回复
可变参数中参数的类型可以不同吗?
yanghy2013
2006-11-08
打赏
举报
回复
一样可以用
象CString 中的format成员函数就是这样用的
ty263
2006-11-08
打赏
举报
回复
这种参数在C++中能用吗?
或者在C++中有没有更好的替代品?
多谢
lann64
2006-11-08
打赏
举报
回复
可变参数
KenYuan2016
2006-11-08
打赏
举报
回复
同意 楼上
taodm
2006-11-08
打赏
举报
回复
不定参数、变参
c/
c++
:三维数组,字符数组和字符串,统计字符串中字符出现的频次,scanf输入空格,正则匹配表达式
c/
c++
:三维数组,字符数组和字符串,统计字符串中字符出现的频次,scanf输入空格,正则匹配表达式
C++
学习之路(六),
C++
primer plus 第七章 函数--C++的编程模块
第 7 章 函数---C++的编程模块 本章内容包括: 函数基本知识。 函数原型。 按值传递函数
参数
。 设计处理数组的函数。 使用 const 指针
参数
。 设计处理文本字符串的函数。 设计处理结构的...
《那些年啊,那些事——一个程序员的奋斗史》三
有句话怎么说来着?天下没有不散的宴席。周一段伏枥加班回来,刘思敏一反常态地还在电脑边。 “咦?你还没睡?” “嗯。在弄点东西。” “哦~” “有件事要跟你说。” “嗯?” “公司搬了,可能这周末...
ZWeily的小品文(五)
C++
入门教程(4)
§4 函数重载和默认
参数
“:( ……”我的msn上突然弹出了这么一张苦瓜脸,不用看也知道是谁了。“师傅,过来帮帮忙好吗?”“不是说过别叫我师傅啊!叫我weily就可以了。怎么了?又有什么问题啊?”“讲不清楚,...
ZWeily的小品文(五)
C++
入门教程(4) (转)
ZWeily的小品文(五)
C++
入门教程(4) (转)[@more@]§4函数重载和默认
参数
“:( ……”我的msn上突然弹出了这么一张苦瓜脸,不用看也知道是谁了。 “师傅,过来帮帮忙好吗?” “不是说过别叫我...
C++ 语言
64,637
社区成员
250,559
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章