va_start
如果我不传递任何可变参数,该函数如何工作?
例子:
void check_varargs(char *test, ...)
{
va_list args;
// What happens here if there are no variable arguments provided as in line 9?
va_start(args, test);
va_end(args);
}
int main()
{
check_varargs("testing 0 variable parameters"); // line 9
check_varargs("testing 1 variable parameters", 1);
}
我正在使用一个静态代码分析工具,它给了我一个错误,va_end
说不正确的 sizeof 表达式。我不确定错误是什么意思,但我怀疑这是因为第 9 行的函数调用。请帮忙。