C语言写参数可变的函数

今天开始重新学习C语言,发现自己以前只是学习了些语法,函数其他类的了解甚少,今天是重新学习的第一天,记录下今天所学的内容:

一。参数可变的定义

例如:

        int  foo( char * fmt, ...){

         /* code */

        }

其中fmt代表可变参数的格式,比方说“%d%s”等;


二。使用

       int foo (char * fmt , ...){

               va_list arg;

               va_start(arg, fmt);

               n = vsprintf(buf, fmt, arg);

               return n;

       }

纯手工码字,真不容易。

三。 调用

      在main函数中,只需要把自己的格式和变量列表传进去就OK了。

       放个简单的例子:

char buf[50];      

int main (){

             foo("%c%s", 'a',"bcd");

             printf("%s\n", buf);

            return 0;

       }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值