民國110年 第2梯次 電腦軟體設計(C++)乙級 學科

第13題

函數f1 之第一個參數的資料結構為陣列,下列有關陣列在函數f1 之宣告方式,何者是正確?

題目

函數f1 之第一個參數的資料結構為陣列,下列有關陣列在函數f1 之宣告方式,何者是正確?

  1. (1) v oid f1(int& array, int size);
  2. (2) void f1(float array[], int size);
  3. (3) void f1(int array, int size);
  4. (4) void f1 (int array(100), int size);

官方答案

(2) void f1(float array[], int size);

解析

C/C++中陣列作為函數參數時會退化為指標,正確宣告方式是在參數中以「型別 名稱[]」表示,如void f1(float array[], int size),編譯器視同float* array。選項1的int& array為單一整數參考,非陣列;選項3的int array僅為單一int變數;選項4的int array(100)語法錯誤,不可用括號指定大小。故正確為選項2。實務上常配合size參數傳遞陣列長度,以在函式內正確遍歷元素。

AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。

官方資料