好吧,我很确定之前已经以某种方式讨论过这个问题,但我显然太愚蠢了,找不到它。
首先:我不是在寻找 va_list 和其他宏。我正在寻找的是类似于 main-function 参数的东西。
众所周知,默认原型是:
int main(int argc, char *argv[]);
现在,我想为我的程序提供类似的东西,但不知道具体如何。
假设我们有这个功能:
void Function(int argc, unsigned short *args[]) {
for(int i = 0; i < argc; ++i) printf("%hu ", args[i]);
}
我想要这样的函数调用:
Function(5, 1, 2, 3, 4, 5);
那行得通吗?因为我不想要 va_list 的“混乱”,也不想创建:
void AnotherFunction() {
unsigned short Args[] = { 1, 2, 3, 4, 5 };
Function(5, Args);
}
只是因为在那种情况下我只需要一个简单的指针。有人可以指出我正确的方向吗?非常感谢。
编辑:谢谢大家的宝贵意见。我将满足于“目前不适用于标准 C/C++,并寻找一种不同的方法来解决我的问题。
再次,非常感谢。