#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;
}
用可变参数实现printf函数
最新推荐文章于 2024-04-12 23:40:39 发布