C 標準庫 - <stdarg.h>
簡介
stdarg.h 頭檔定義了一個變數類型 va_list 和三個宏,這三個宏可用於在參數個數未知(即參數個數可變)時獲取函數中的參數。
可變參數的函數通在參數列表的末尾是使用省略號(,...)定義的。
庫變數
下麵是頭檔 stdarg.h 中定義的變數類型:
序號 | 變數 & 描述 |
---|---|
1 | va_list 這是一個適用於 va_start()、va_arg() 和 va_end() 這三個宏存儲資訊的類型。 |
庫宏
下麵是頭檔 stdarg.h 中定義的宏:
序號 | 宏 & 描述 |
---|---|
1 | void va_start(va_list ap, last_arg) 這個宏初始化 ap 變數,它與 va_arg 和 va_end 宏是一起使用的。last_arg 是最後一個傳遞給函數的已知的固定參數,即省略號之前的參數。 |
2 | type va_arg(va_list ap, type) 這個宏檢索函數參數列表中類型為 type 的下一個參數。 |
3 | void va_end(va_list ap) 這個宏允許使用了 va_start 宏的帶有可變參數的函數返回。如果在從函數返回之前沒有調用 va_end,則結果為未定義。 |