c语言如何定义一个可变参数函数 如何调用其输入的参数 分别 C语言中如何实现可变参函数

作者&投稿:刀贺 (若有异议请与网页底部的电邮联系)

有专门的宏,处理可变参

void va_start( va_list arg_ptr, prev_param );

type va_arg( va_list arg_ptr, type );

void va_end( va_list arg_ptr );

一个简单的例子

void simple_va_fun(int i, ...)
{
va_list arg_ptr;
int j=0;

va_start(arg_ptr, i);
j=va_arg(arg_ptr, int);
va_end(arg_ptr);
printf("i=%d j=%d\bn", i, j);
return;
}
int main()
{
    simple_va_fun(1);
    simple_va_fun(1,2);
    simple_va_fun(1,200);
    return 0;
}


~