标签:style class tar get strong 使用
stdarg.h是C语言中C标准函数库的头文件,stdarg是由standard(标准) arguments(参数)简化而来,主要目的为让函数能够接收可变参数。
1、可变参数函数
声明可变参数函数
可变参数函数的参数数量是可变动的,它使用省略号来忽略之后的参数。例如printf函数一般。代表性的声明为:
int check(int a, double b, ...);
可变参数函数最少要有一个命名的参数,所以
char *wrong(...);
在C中是不被允许的(在C++中,这样的声明是合理的)。C中,省略符号之前必须要有逗号;而在C++中,则没有这种强制要求。
定义可变参数函数
使用相同的语法来定义:
long func(char, double, int, ...);
long func(char a, double b, int c, ...)
{
/* ... */
}
在C的旧形式中可能会出现较省略的函数定义:
long func();
char a;
double b;
long func(a, b, c, ...)
{
/* ... */
}
2、成员
类型名称
|
描述
|
相容
|
va_list
|
用来保存宏va_arg与宏va_end所需信息
|
C89
|
巨集名称
|
描述
|
相容
|
va_start
|
使va_list指向起始的参数
|
C89
|
va_arg
|
检索参数
|
C89
|
va_end
|
释放va_list
|
C89
|
va_copy
|
拷贝va_list的内容
|
C99
|
stdarg.h——用于函数接受可变参数,布布扣,bubuko.com
标签:style class tar get strong 使用
原文地址:http://blog.csdn.net/wan_hust/article/details/29410305