可變引數相關知識

2022-09-11 21:18:30 字數 968 閱讀 3409

今天學到了可變引數的相關知識,突然想起來之前有一次面試,面試官問的問題就是引數的個數不確定時怎麼辦?當時沒有回答出來,現在在這裡記錄一下。

可變引數: 是jdk1.5之後出現的新特性

使用前提:

當方法的引數列表資料型別已經確定但是引數的個數不確定,就可以使用可變引數。

使用格式: 定義方法時使用

修飾符 返回值型別 方法名(資料型別...變數名)

可變引數的原理:

可變引數底層就是乙個陣列,根據傳遞引數個數不同,會建立不同長度的陣列,來儲存這些引數

傳遞的引數個數,可以是0個(不傳遞),1,2...多個

可變引數的注意事項:

1.乙個方法的引數列表,只能有乙個可變引數。

2.如果方法的引數有多個,那麼可變引數必須寫在引數列表的末尾

**演示:

//

可變引數demo展示

public

class

kebiancanshu

//定義乙個方法,方法的引數列表中有可變引數

public

static

void test(int a, double

b,string... args)

}

執行結果:

小案例:編寫方法計算n個數的整數和

可變引數列印 解析可變引數

1.的一般用法 define str s s define cons a,b int a e b int main 2.接受,列印可變引數 參考 glibc庫的bebug函式 define printf fmt,args.printf fmt,args 使用方法 define pr debug fm...

可變引數 函式 可變引數列表 1

我們在c語言程式設計中有時會遇到一些引數個數可變的函式,即函式的入參個數和型別是不確定的,例如printf 函式,其函式原型為 int printf char format,它除了有乙個引數format固定以外,後面跟的引數的個數和型別是可變的 用三個點 做引數佔位符 實際呼叫時可以有以下的形式 p...

可變引數及可變引數巨集的使用

我們在c語言程式設計中會遇到一些引數個數可變的函式,例如printf 這個函式,這裡將介紹可變函式的寫法以及原理.一般在除錯列印debug 資訊的時候,需要可變引數的巨集.從c99開始可以使編譯器標準支援可變引數巨集 variadic macros 另外gcc 也支援可變引數巨集,但是兩種在細節上可...