【发布时间】:2012-08-04 20:34:51
【问题描述】:
可能重复:
Is it possible to have a variadic function in C with no non-variadic parameter?
是否可以创建不带参数的 C 可变参数函数?
例如:
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;
}
【问题讨论】:
-
已经有一个关于函数的有效答案。与此相反,仅允许带有
...的 vaarg macros。因此,如果您告诉我们您想要实现的目标,可能会有一种方法... -
您可以使用虚拟参数和隐藏对虚拟参数的需要的可变参数宏来伪造它。
标签: c