C++: 可變參數;


可變參數,即參數的個數是動態變化的, 可多可少。

1. 可變參數;

  可變參數一般采用”..."表示,用在宏上表示變參宏, 如:

#define  WriteLine(format,...)   prifntf(format, __VA_ARGS__)

從上可以看出, 宏中"..."可以使用__VA_ARGS__來表示;

2. va_list實現函數可變參(配合vsprintf);

在函數也可以實現可變參數, 在函數內可以使用va_list, va_start, va_arg, va_end, 配合vsprintf。

例如:

void   test(const char *pFromat, ...)
{
     va_list st;
     va_start(st,pFormat);
     char  buffer[1000] ={0};
     vsprintf(buffer, pFormat, st) ;
     va_end(st);
}    

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM