一个典型的过程是
int sum(char *msg, ...)
{
va_list st;
va_start(st, msg);
int total = 0;
int tmp;
while((tmp = va_arg(st, int)) != 0)
{
total += tmp;
}
va_end(st);
cout << "The sum of the list is: " << total;
return 0;
}
由于sum函数自身是不知道有几个参数的,只知道可变参数的首地址是&msg + sizeof(char)。
本文介绍了一个使用可变参数列表的C++函数示例。该函数通过va_list、va_start、va_arg及va_end宏来处理不定数量的整数参数,并计算它们的总和。文章展示了如何利用这些宏进行迭代求和,直到遇到结束标志。
4984

被折叠的 条评论
为什么被折叠?



