可变参数函数设计

第一点:C语言中可以定义参数可以改变的函数

参数的可变函数的实现依赖于stdarg.h头文件

-va_list - 参数的集合

-va_arg - 取具体的参数值

-va_start- 标识参数访问的开始

-va_end- 标识参数访问的结束 

 

 

可变参数的限制有以下方面:

1.可变参数必须从头到尾按照顺序逐个访问

2.参数列表中至少存在一个确定的命名参数

3.可变参数函数无法确定实际存在的参数的数量

4.可变参数函数无法确定参数的实际类型

注意:va_arg中如果指定了错误的类型,那么结果是不可预测的。我们可以想一下,我们在C语言中经常使用的printf()函数是不是就是可变参数的函数呢?答案:printf()函数就是一种可变参数的函数类型,printf()函数的内部就是通过可变参数函数的机制来设计出来的。

posted @ 2019-09-21 16:38  repinkply  阅读(8)  评论(0)    收藏  举报