可變參數函數 在計算機程序設計一個可變參數函數是指一個函數擁有不定引數即是它接受一個可變數目的參數不同的程式語言對可變參數函數的支持有很大差異 一般而言在設計函數時會遇到許多數學和邏輯操作是需要一些可變功能例如計算數字串的總和字符串的聯接或其他操作過程都可以存在任意數量的參數 另一種許多語言都實現為可變參數函數的是格式輸出函數在C語言的printf函數和Common Lisp的format函數就是例子這些函數都需要一個參數指定格式的輸出再讀取可變參數的值進行格式化 另外可變參數函數在某些語言存在安全問題例如C語言在沒有長度檢查和類型檢查在傳入過少的參數或不符的類型時可能會出現溢位的情況更可能會被利用為攻擊目標所以在設計函數時可以先考慮其他替補方案例如以類型安全的方式重載