c语言可变参数
2011-11-04 18:56
260 查看
在c和c++中有一类函数含所有不确定的参数列表,例如经典的printf(char *format,...)。本文讲讨论如何实现变长参数的函数。
在<stdarg.h>中包含了一组宏定义,他们对如何遍历参数表进行了定义。
主要有4个类型:
va_list:用于声明一个变量,该变量依次引用参数列表中的参数,例va_list ap;看起后缀list,应该就是一个链表
va_start:用于将ap声明的变量指向第一个无名参数。va_start(ap,最后一个有名参数)。可变长参数函数必须含有一个有名参数。
va_arg:返回ap当前指向的参数,并++ap。va_arg(ap,类型)
va_end:完成必要的清理工作。
在<stdarg.h>中包含了一组宏定义,他们对如何遍历参数表进行了定义。
主要有4个类型:
va_list:用于声明一个变量,该变量依次引用参数列表中的参数,例va_list ap;看起后缀list,应该就是一个链表
va_start:用于将ap声明的变量指向第一个无名参数。va_start(ap,最后一个有名参数)。可变长参数函数必须含有一个有名参数。
va_arg:返回ap当前指向的参数,并++ap。va_arg(ap,类型)
va_end:完成必要的清理工作。
相关文章推荐
- c语言中可变参数的原理---printf
- C语言中 variable argument 可变参数用法
- C语言写参数可变的函数
- c语言—stdarg宏(函数可变参数实现)
- C语言中va(可变函数参数) 的另一种用法与危险事项
- C语言之传递可变参数
- C语言中的可变参数函数
- C语言利用va_list、va_start、va_end、va_arg宏定义可变参数的函数
- 转:C语言 可变参数
- C语言:传递可变参数
- C语言中可变参数的用法
- Printf And Scalable Param in C Language (水滴石穿C语言之可变参数问题 )
- c语言之可变参数
- C语言可变参数的使用
- C语言可变参数函数详解示例
- c语言中的函数可变参数列表相关的三个宏
- C语言:可变参数宏以及##和#符的使用
- C语言的可变参数一点研究
- C语言中可变参数的用法va_list
- C语言可变参数函数实现原理