回覆列表
-
1 # lydkg11575
-
2 # 如今念來仍迷
返回值就設定成陣列型別啊,eg:
public int[] test(){
寫邏輯
return 陣列;
}
-
3 # 使用者3584028736239883
C語言返回值不支援返回陣列,不過可以透過返回指標型別,用以替代陣列。在C語言中,陣列大多數時候是可以用指標替代的。不過需要注意的是,不能夠返回在函式內部定義的區域性變數陣列,因為一旦函式退出,區域性變數就會被釋放,導致陣列指標無效。可以返回以下幾種:
1 全域性變數,或者全域性變數空間內的一個地址。
2 靜態區域性變數,或者靜態區域性變數內部的一個地址。
3 從引數傳入的陣列/指標變數,或者在其上做的合法偏移。
4 在陣列內部動態申請的空間首地址。
1、函式不能返回一個陣列,只能返回一個變數,或地址 。如果你想直接返回一個二維陣列,這是做不到的。可以用下面的方法 ,先建一個結構體。struct array{int a[3][3];}; array solve(){array a;return a;} 透過這種方法,來得到二維陣列。 2、陣列在作為函式返回值或者函式引數時,實際上只作為指標來返回或者傳遞的。因此返回值用指標資料型別。比如下面的程式碼:int g_a[4] = {1,2,3,4};int * retn_arrary() //返回值用指標型別即要。{return g_a; }