好吧,我很确定以前已经以某种方式讨论过这个问题,但我显然太愚蠢了,找不到它。
首先:我不是在寻找 va_list 和其他宏。
我正在寻找类似主函数参数的东西。
众所周知,默认原型是:
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++,并寻找不同的方法来解决我的问题”。
再次非常感谢。