所以我一直在尝试将 stdarg 用于不确定的参数。对于 int 它工作得很好,但现在我正在尝试使用 char 指针。这是我的代码:
void updateValue(char *parameter, parameterTypes type, ...)
{
va_list arg_list;
U32 value;
char* stringValue;
va_start(arg_list, type);
value = va_arg(arg_list, U32);
stringValue = va_arg(arg_list, char*);
va_end(arg_list);
printf("\n\n%s\n\n", stringValue);
}
当我调用这个函数时,我只是使用:
updateValue("name", stringType, "TestingVaArg");
前两个参数是列表中参数的名称和它的类型。这在没有 stdarg 设置的情况下工作,所以这不是问题。