Functions Returning Arrays

Functions Returning Arrays

Is it possible for a function to return an array instead of a single value?

No but, then again, you don’t really pass arrays as parameters, either. What C/C++ can do is pass the address of an array (a pointer) and you can return a pointer, too. Just be careful that when you return a pointer to an array, that the array is properly allocated.

For example, if you create an array within your function:

 int *MyFunc(){   int a[20];   return a;}

this will fail because local variables are allocated on the stack and will no longer be valid when the function returns.


Share the Post: