va_list, va_start, va_arg, va_end

va_list, va_start, va_arg, va_endC語言中解決變參問題的一組宏。

使用步驟如下:

  1. /*頭文件:<stdarg.h>*/
  2.  
  3. /*定義一個va_list型的變量args,這個變量是指向參數的指針;*/  
  4. va_list args;  
  5.  
  6. /*  
  7.  *用va_start宏初始化args,注意,va_start的第二個參數before指的是變參表的前面的那個參數, 
  8.  *va_start宏調用完成後,args將指向before後面的參數,也即變參表的第一個參數; 
  9.  */  
  10. va_start(args, before);  
  11.  
  12. /* 
  13.  *用va_arg宏返回args當前所指的參數,va_arg宏的第二個參數type是你要返回的參數的類型, 
  14.  *返回當前所指的參數後,args自動指向下一個參數; 
  15.  */  
  16. type var = va_arg(args, type); 
  17.  
  18. /*用va_end宏結束可變參數的獲取;*/  
  19. va_end(args);  

參考文章:

http://wind1728.blog.sohu.com/76008741.html

http://www.cnblogs.com/margincc/archive/2011/03/29/2095057.html

http://simplesource.blog.163.com/blog/static/10341406200901641911819/

http://www.cppblog.com/xmoss/archive/2009/07/20/90680.html

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章