如何编写参数个数不定函数

 
代码
#include  < stdio.h >

// 重要引用
#include  < stdarg.h >

void  sum( char *  msg,...);
int  main( int  argc,  char *  argv[])
{
        sum(
" The total of 1+2+3+4 is %d\n " , 1 , 2 , 3 , 4 , 0 ); // 最后的0作为sum函数循环跳出标识
         return   0 ;
}

void  sum( char *  msg,...)
{
        
int  total = 0 ;
        va_list ap;
        
int  arg;
        va_start(ap,msg);
        
while ((arg = va_arg(ap, int )) != 0 ) // 0跳出标识
        { // 循环获得参数值
                total += arg;
        }
        printf(msg,total);
        va_end(ap);
}

 

你可能感兴趣的:(函数)