在线文档教程
C++
应用 | Utilities

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_argaccesses the next variadic function argument (function macro)
va_endends traversal of the variadic function arguments (function macro)

c VA文件[医]启动

© cppreference.com

在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。

http://en.cppreference.com/w/cpp/实用程序/Variadic/va[医]启动