可变参数
可变参数
为了能使函数具有可变参数,需要导入头文件
<stdarg.h>
原理
在函数栈中根据依次查询参数地址。头文件中使用宏定义实现参数地址查询。
注意
至少有一个参数
应用
先使用va_list 定义一个变量。(本质是char*类型)
再调用va_start(artptr,lastarg)初始化va_list,lastarg是参数数量
调用va_arg(artptr,type)访问当前的参数,类型为type,并将指针后移
最后调用va_end(argptr)清理va_list的内存
案例
|
发布于