C++ 变长参数列表函数的用法
来源:互联网 发布:思途cms 编辑:程序博客网 时间:2024/04/27 22:20
对变长参数的访问是通过下面三个宏实现的:
参数
type: 待获取参数的数据类型;
arg_ptr: 指向参数列表的 va_list 类型指针(va_list 是 char* 的别名);
prev_param: 第一个可选参数(用 "..." 标识的参数属可选参数)之前, 并与之相邻的参数的名称. 在 ANSI 版本的宏中, 该参数是必须的.
头文件
<stdio.h> 和 <stdarg.h>
说明
1. va_start 使 arg_ptr 指向传递给函数可选参数列表中的第一个参数;
2. va_start 必须在第一次使用 va_arg 前使用;
3. va_arg 从 arg_ptr 指向的位置获取一个 type 类型的值. 调用结束后, arg_ptr 偏移 sizeof(type) 个字节指向下一个参数的位置. 注意, 在 VS2008withSP1 中, arg_ptr 偏移量大于等于 4. 当 sizeof(type) < 4 时, arg_ptr 偏移 4 个字节;
4. 取完所有参数后, 调用 va_end 可将 arg_ptr 置为 NULL.
代码
输出
参考
http://msdn.microsoft.com/zh-cn/library/kb57fad8.aspx
- C++ 变长参数列表函数的用法
- C++ 变长参数列表函数的用法
- C/C++函数变长参数列表实现
- C语言---变长参数列表---变长参数的使用
- C语言---变长参数列表---变长参数的传递
- 变长参数列表函数
- C++变长参数函数的用法(转)
- C++变长参数函数的用法(转)
- C++变长参数函数的用法(转)
- 函数的变长参数
- 变长参数的函数
- 变长参数的函数
- C的变长参数
- C语言函数 变长参数
- c语言变长参数函数
- C++变长参数函数的用法(转载)
- C语言中 变长参数列表
- 深入解析C语言变长参数列表
- windows下安装apc缓存
- I8320的limo开发准备工作:在Debian上使用scratchbox搭建交叉编译环境
- strncpy的源代码实现
- ice 通用代码解析
- 关于两个排列的思考
- C++ 变长参数列表函数的用法
- QSettings的关键字不支持中文
- 海量数据处理分析
- Dropbox无法访问问题解决方法
- php的sphinx extension安装及测试
- 定义科目表(Chart of Accounts)
- struts 技术 form表单提交的内容到ActionForm中为空
- C 语言的谜题
- VPN