va_start
Va[医]启动
Defined in header | | |
---|---|---|
void va_start( va_list ap, parm_n | | |
大va_start
宏启用对命名参数后面的变量参数的访问。parm_n
...
va_start
应该使用实例调用到有效的va_list
对象ap
在接到任何电话之前va_arg
...
如果parm_n
类型声明为引用类型,或声明的类型与默认参数提升,该行为是未定义的。
参数
ap | - | an instance of the va_list type |
---|---|---|
parm_n | - | the named parameter preceding the first variable parameter |
扩展值
%280%29
注记
va_start
需要支持parm_n
满载operator&
...
例
二次
#include <iostream>
#include <cstdarg>
int add_nums(int count, ...)
{
int result = 0;
va_list args;
va_start(args, count
for (int i = 0; i < count; ++i) {
result += va_arg(args, int
}
va_end(args
return result;
}
int main()
{
std::cout << add_nums(4, 25, 25, 50, 50) << '\n';
}
二次
产出:
二次
150
二次
另见
va_arg | accesses the next variadic function argument (function macro) |
---|---|
va_end | ends traversal of the variadic function arguments (function macro) |
c VA文件[医]启动
© cppreference.com
在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。