很多时候我想要一个函数来接收可变数量的参数,例如以NULL结尾
#define push(stack_t stack, ...) _push(__VARARG__, NULL);
func _push(stack_t stack, char *s, ...) {
va_list args;
va_start(args, s);
while (s = va_arg(args, char*)) push_single(stack, s);
}
Run Code Online (Sandbox Code Playgroud)
如果foo收到非char*变量,我可以指示gcc或clang发出警告吗?类似的东西__attribute__(format),但是对于同一指针类型的多个参数.