如何列印一個 C++ 函式中陣列引數的大小?


可以使用 sizeof() 獲取資料型別的大小。以下是列印一個 C++ 函式中陣列引數的程式作為演示。

示例

 示例演示

#include <iostream>
using namespace std;
int func(int a[]) {
   cout << "Size: " << sizeof(a);
   return 0;
}
int main() {
   int array[5];
   func(array);
   cout << "\nSize: " << sizeof(array);
   return 0;
}

輸出

以上程式的輸出如下。

Size: 8
Size: 20

接下來我們來理解以上程式。

在 func() 函式中,顯示 a 的大小,大小為 8,這是因為 main() 中的陣列作為指標傳遞,而 a 指向陣列的開頭。因此,sizeof(a) 顯示指標的大小,即 8。以下程式碼段展示了這一點。

int func(int a[]) {
   cout << "Size: " << sizeof(a);
   return 0;
}

在 main() 函式中,顯示陣列的大小,大小為 20。這是因為 int 的大小為 4,陣列包含 5 個 int 元素。以下程式碼段展示了這一點。

int main() {
   int array[5];
   func(array);
   cout << "\nSize: " << sizeof(array);
   return 0;
}

更新於: 2020-06-26

239 次觀看

職業起航

完成課程以獲得認證

開始
廣告
© . All rights reserved.