您的位置:首页 > 其它

用可变参数实现printf函数

2015-04-05 01:00 225 查看
#include <stdio.h>
#include <stdarg.h>
void my_printf(int val, ...)
{
va_list   arg;
int i;
int a=1;
char b='h';
char *p="asd";
//准备访问可变参数
va_start(arg, val);
char a[4];
//添加取自可变参数列表的值
for (i =0; i<val; i+=1)
{
a[i]=va_arg(arg);
}
//完成处理可变参数
for(i=0;i<val,i++)
{
switch(a[i])
{
case 'd':printf("%d",d);
break;
case 'c':putchar(b);
break;
case 's':puts(p);
break;
case '\n':putchar(10);
default: break;
}
}
}

int main()
{
my_printf(4,'d','c','\n','s');
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: