很多时候,我希望一个函数接收可变数量的参数,例如,以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);
}
如果foo接收到非char*
变量,我可以指示gcc或clang发出警告吗?类似于__attribute__(format)
,但用于相同指针类型的多个参数。
https://stackoverflow.com/questions/10533842
复制相似问题