如何写参数个数不定的函数(即类似printf的函数)
来源:互联网 发布:mysql 日志文件 编辑:程序博客网 时间:2024/05/01 04:03
下面演示了如何写类似printf的函数
#include <stdio.h>
#include <stdarg.h> //要包含这个头文件
void variable(int i, ...)
{
int j = 0;
va_list arg_ptr; //第1步,定义这个指向参数列表的变量
va_start(arg_ptr, i);//第2步,把上面这个变量初始化.即让它指向参数列表
while( j != -1 )
{
//第3步,获取arg_ptr指向的当前参数.这个参数的类型由va_arg的第2个参数指定
j = va_arg(arg_ptr, int);
printf("%d ",j );
}
va_end(arg_ptr); //第4步,做一些清理工作
}
main()
{
variable(3, 3, 4, 5, 6, -1);
}
#include <stdarg.h> //要包含这个头文件
void variable(int i, ...)
{
int j = 0;
va_list arg_ptr; //第1步,定义这个指向参数列表的变量
va_start(arg_ptr, i);//第2步,把上面这个变量初始化.即让它指向参数列表
while( j != -1 )
{
//第3步,获取arg_ptr指向的当前参数.这个参数的类型由va_arg的第2个参数指定
j = va_arg(arg_ptr, int);
printf("%d ",j );
}
va_end(arg_ptr); //第4步,做一些清理工作
}
main()
{
variable(3, 3, 4, 5, 6, -1);
}
作为va_list,va_start的练习,可以学习一下使用_vsnprintf函数
#include <stdio.h>
#include <stdarg.h>
void formatoutput(char* format, ...)
{
char s[10];
va_list arg_ptr;
va_start(arg_ptr, format);
_vsnprintf(s, sizeof(s)-1, format, arg_ptr);
printf("%s ", s);
}
void main()
{
formatoutput("%s%s", "d", "g");
}
#include <stdarg.h>
void formatoutput(char* format, ...)
{
char s[10];
va_list arg_ptr;
va_start(arg_ptr, format);
_vsnprintf(s, sizeof(s)-1, format, arg_ptr);
printf("%s ", s);
}
void main()
{
formatoutput("%s%s", "d", "g");
}
- 如何写参数个数不定的函数(即类似printf的函数)
- 如何写参数个数不定的函数(即类似printf的函数)
- 写一个类似printf的带有不定参数的函数
- VC如何写参数个数不定的函数…
- 【c++】写一个类似printf的带有不定参数的函数
- 实现自己的不定参数函数(类似printf)
- 如何实现参数个数不定的函数?
- 函数参数个数不定,... printf()是个好例子
- C#如何实现不定参数个数的函数
- 不定参数个数的C函数-
- 2.不定个数参数的函数写法
- 传不定个数参数的函数写法
- 不定参数个数的C函数
- c++中如何写参数不定的函数
- c++中如何写参数不定的函数
- c++中如何写参数不定的函数
- 一个类似printf的可变参数函数
- 怎样写类似printf() 的函数, 再把参数转传给printf() 去完成大部分工作?
- 轻松使用JSP生成饼图
- 线程内核对象
- javascrip实现下拉框联动
- JSP与SQL SERVER的留言本
- 对图片上的颜色进行转换
- 如何写参数个数不定的函数(即类似printf的函数)
- jspSmartUpload上传下载全攻略
- Tomcat5.x中的虚拟主机配置方法
- 利用iText在JSP中生成PDF报表
- 女人50万年的进化
- JSP单页面网站文件管理器
- 分割字符串
- JSP调用JavaBean在网页上动态生成柱状图
- 电脑族吃什么比较好