如何将C,而不是c ++,变量参数传递(并访问)到函数中?
void foo(char* mandatory_param, char* optional_param, char* optional_param2...)
Run Code Online (Sandbox Code Playgroud)
谢谢
/ fmsf
alt*_*ive 12
使用 stdarg.h
您需要使用va_list,然后使用宏va_start,va_arg和va_end.
有关更多信息,请参阅http://www.acm.uiuc.edu/webmonkeys/book/c_guide/2.10.html
这听起来像你在寻找varargs.
#include <stdarg.h>
void foo(const char *fmt, ...)
{
va_list argp;
va_start(argp, fmt);
int i = va_arg(argp, int);
// Do stuff...
va_end(argp);
}
Run Code Online (Sandbox Code Playgroud)