va_list
定义了一个指针arg_ptr, 用于指示可选的参数.
va_start(arg_ptr, argN)
使参数列表指针arg_ptr指向函数参数列表中的第一个可选参数.
说明: argN是位于第一个可选参数之前的固定参数, 或者说最后一个固定参数.
函数参数列表中参数在内存中的顺序与函数声明时的顺序是一致的. 如果有一va函数
的声明是void va_test(char a, char b, char c, ...), 则它的固定参数依次是a,
b,c, 最后一个固定参数argN为c, 因此就是va_start(arg_ptr, c).
va_arg(arg_ptr, type)
返回参数列表中指针arg_ptr所指的参数, 返回类型为type. 并使指针arg_ptr指向参
数列表中下一个参数.
返回的是可选参数, 不包括argN.
va_end(arg_ptr)
清空参数列表, 并置参数指针arg_ptr无效.
【2007-03-20】
文章评论(0条评论)
登录后参与讨论