如何在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,因为数组inmain()作为指针传递并指向数组的开始。因此,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;
}