社区
C语言
帖子详情
C语言参数数量可变函数如何编写?
qjydali
2003-09-14 11:34:15
请教高手:在C语言中,参数数量可变函数如何编写?
比如,最典型的就是广为人用的printf(const char *, ...)了。
1. 我连参数的数量都不知道,如何引用它呢?
2. 参数的类型不同,则存贮空间也大多不同,如何控制?
我见过有些与此相关的代码,可惜是函数里面加函数,加了好几层,早就看晕了。期待高手一针见血式的讲出其本质。
...全文
122
2
打赏
收藏
C语言参数数量可变函数如何编写?
请教高手:在C语言中,参数数量可变函数如何编写? 比如,最典型的就是广为人用的printf(const char *, ...)了。 1. 我连参数的数量都不知道,如何引用它呢? 2. 参数的类型不同,则存贮空间也大多不同,如何控制? 我见过有些与此相关的代码,可惜是函数里面加函数,加了好几层,早就看晕了。期待高手一针见血式的讲出其本质。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
qjydali
2003-09-16
打赏
举报
回复
关于对emmyjeff的回答:
1. %d%d%f%s只能说明有四个参数,但不能说明%d对应的就是一个整数
(16位或32位),因为它也可以对应一个字符(8位,字符也可以用来打印)。
2. 里面又有了一些我所不懂的函数,而且您的回答也不是特别的透彻。
emmyjeff
2003-09-14
打赏
举报
回复
在函数的第一个参数指出参数的类型如:"参数有:%d%d%f%s"表示可变参数有四个参数,类型依次为整数、整数、浮点数、字符串,你可以如下取得参数
va_list arg_list;
va_start(arg_list, format);
////用你从第一个参数中解析出来的参数类型分别用下面的这个函数取得变参
type va_arg( va_list arg_ptr, type );
va_end(arg_list);
免费下载:
C语言
难点分析整理.doc
7. C中
可变
参数
函数
实现 38 8. C程序内存中组成部分 41 9. C编程拾粹 42 10.
C语言
中实现数组的动态增长 44 11.
C语言
中的位运算 46 12. 浮点数的存储格式: 50 13. 位域 58 14.
C语言
函数
二维数组传递方法 64 15. ...
C语言
可变
参数
函数
_初探
C语言
允许定义
参数
数量
可变
的
函数
,这称为
可变
参数
函数
(variadic function)。这种
函数
需要固定
数量
的强制
参数
,后面是
数量
可变
的可选
参数
。 其中,强制
参数
必须至少一个,可选
参数
数量
可变
,类型
可变
,可选
参数
的...
C语言
可变
参数
函数
的原理和实现,及如何
编写
自定义
可变
参数
函数
C语言
中的
可变
参数
函数
是一种可以接受不定
数量
和类型的
参数
的
函数
,它可以用来实现一些灵活和通用的功能。本文介绍了
C语言
中的
可变
参数
函数
的原理和实现,以及如何
编写
自定义的
可变
参数
函数
。
C语言
中的
可变
参数
函数
可变
参数
函数
:这些
函数
与我们平时定义的
函数
有些不同,它们的
参数
个数是不确定的,动态变化的。比如我们经常用到的 prinf, sprinf 等等,我们也可以自定义这类
函数
,这篇文章讲解
C语言
中的
可变
参数
函数
相关的内容。
C语言
可变
参数
函数
(printf/scanf)
C 语言允许定义
参数
数量
可变
的
函数
,这称为
可变
参数
函数
(variadic function)。这种
函数
需要固定
数量
的强制
参数
(mandatory argument),后面是
数量
可变
的可选
参数
(optional argument)。 这种
函数
必须至少有一个...
C语言
69,381
社区成员
243,073
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章