Lv.的博客
- #include<stdio.h>
- #include<string.h>
- #include<stdarg.h>
-
-
- void minprintf(char *fmt,...)
- {
- va_list ap;
- char *p,*sval;
- double dval;
- int ival;
- va_start(ap,fmt);
- for(p=fmt;*p;p++)
- {
- if(*p!='%')
- {
- putchar(*p);
- continue;
- }
- switch (*++p)
- {
- case 'd':
- ival=va_arg(ap,int);
- printf("%d",ival);
- break;
- case 'f':
- dval=va_arg(ap,double);
- printf("%f",dval);
- break;
- case 's':
- for(sval=va_arg(ap,char *);*sval;sval++)
- {
- putchar(*sval);
- }
- break;
- default :
- putchar(*p);
- break;
- }
- }
- va_end(ap);
- }
- int sum(int m,...)
- {
- va_list ap;
- va_start(ap,m);
- int sum=0;
- while(m--)
- {
- sum+=va_arg(ap,int);
- }
- va_end(ap);
- return sum;
-
-
- }
- int main(int argc,char *argv[])
- {
- minprintf("%dhao%shao%f",10,"asda",20.1);
- printf("%d",sum(3,10,20,32));
- }
posted @
2017-03-02 14:06
Avatarx
阅读(
1159)
评论()
编辑
收藏
举报