是否可以创建没有参数的C varargs函数?

时间:2012-08-04 20:34:51

标签: c

  

可能重复:
  Is it possible to have a variadic function in C with no non-variadic parameter?

是否可以创建没有参数的C varargs函数?

例如:

int foo(...);

我想做以下事情:

list* create_list(...){
    list *mylist = list_create();
    void *current_arg = va_arg(void*);
    while (current_arg != NULL){
        list_add(mylist, current_arg);
        current_arg = va_arg(void*);
    }
    return mylist;
}

1 个答案:

答案 0 :(得分:6)

没有。变量函数必须具有一个或多个命名参数。

亲自尝试,你会看到类似的东西:

  

错误:ISO C在'...'之前需要一个命名参数