VOOZH about

URL: https://www.geeksforgeeks.org/cpp/how-to-print-size-of-an-array-in-a-function-in-c/

⇱ How to print size of array parameter in C++? - GeeksforGeeks


  • Courses
  • Tutorials
  • Interview Prep

How to print size of array parameter in C++?

Last Updated : 23 Jul, 2025

How to compute the size of an array CPP?


Output
40 8

Time Complexity: O(1)  
Auxiliary Space: O(n) where n is the size of the array.

The above output is for a machine where the size of an integer is 4 bytes and the size of a pointer is 8 bytes.
The cout statement inside main() prints 40, and cout in findSize() prints 8. The reason for different outputs is that the arrays always pass pointers in functions. Therefore, findSize(int arr[]) and findSize(int *arr) mean exact same thing. Therefore the cout statement inside findSize() prints the size of a pointer.

For details, refer to the following articles:

How to find the size of an array in function?

We can pass a 'reference to the array'.


Output
40 40

Time Complexity: O(1)
Space Complexity: O(n) where n is the size of the array.

The above program isn't appealing as we have used the hardcoded size of the array parameter. 

We can do it better using templates in C++

We can use templates to define the function instead of using the hardcoded size.


Output
40 40

Time Complexity: O(1)
Space Complexity: O(n) where n is the size of the array.

We can make a generic function as well


Output
40 40
80 80

Time Complexity: O(1)
Space Complexity: O(n) where n is the size of array.

Now the next step is to print the size of a dynamically allocated array. 

It's your task man! I'm giving you a hint.

This article is contributed by Swarupananda Dhua

Comment