我有一个如下所示的方法:
static inline float average(int numbers, ...) {
}
如何使用 for 循环来获取我放入数字中的所有值。例如:
average(1, 3, 5, 7);
最佳答案
你不能。如果您想使用可变参数,则需要一种获取参数数量的机制。大多数情况下,它是从第一个非可变参数推断出来的。例如,这就是 printf
和 family 的工作原理。
对于你的例子,我个人不会为可变参数而烦恼。如果您想要将诸如average
之类的数学函数应用于一个或多个参数,只需使用 vector 即可:
static inline float average(const int* numbers, int size)
<小时/>
如果您坚持使用可变参数函数,这些将帮助您入门:
关于c - C语言中如何进行枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35535950/