typedef char* va_list;
void va_start(va_list ap,prev_parm);
type va_arg(va_list ap,type);
void va_end(va_list ap);
- va_list是一個字符指針背亥,可以理解為指向當(dāng)前參數(shù)的一個指針野蝇,取參必須通過這個指針進(jìn)行兽愤。
- <step1> 在調(diào)用參數(shù)表之前惊暴,定義一個va_list類型的變量乾吻,假設(shè)va_list類型變量被定義為ap
- <step2> 然后通過使用va_start對ap進(jìn)行初始化,使它指向可變參數(shù)列表中的第一個參數(shù)秉继,其中prev_parm是可變參數(shù)的前一個參數(shù)
- <step3> 獲取參數(shù)圈暗,調(diào)用va_arg,它的第一個參數(shù)是ap缘挽,第二個參數(shù)是要獲取的參數(shù)的指定類型瞄崇,然后返回這個指定類型的值,并將ap的位置指向可變參數(shù)列表的下一個位置壕曼。
- <step4> va_end用于關(guān)閉ap指針苏研,使ap置為null。