1. 程式人生 > >c++中如何寫引數不定的函式

c++中如何寫引數不定的函式

#include "stdio.h"
#include "stdarg.h"
void simple_va_fun(int start, ...)
{
     va_list arg_ptr;
     int nArgValue =start;
     int nArgCout=0;   //可變引數的數目
     va_start(arg_ptr,start);   //以固定引數的地址為起點確定變參的記憶體起始地址。
     do
     {
         ++nArgCout;
         printf("the %d th arg: %d",nArgCout,nArgValue); //輸出各引數的值
         nArgValue = va_arg(arg_ptr,int);   //得到下一個可變引數的值
     } while(nArgValue != -1);               
     return;
}
int main(int argc, char* argv[])
{
     simple_va_fun(100,-1);
     simple_va_fun(100,200,-1);
     return 0;
}