在C++的函数中,怎么把int数组用return返回出来呢?
时间: 2023-02-08 10:11:44 浏览: 108
C++ 让函数返回数组的方法
在 C 语言中,不能直接通过 return 语句来返回数组。但是可以通过传递数组的指针或者数组名来达到返回数组的目的。
例如,可以在函数中定义一个指针变量,并将数组名赋值给这个指针变量,然后通过 return 语句返回指针变量。
```C
int* returnArray(int size){
int arr[size];
// 对数组进行操作
return arr;
}
```
但是这种方式是有问题的,因为在函数调用结束后,arr所在的内存空间会被释放,所以返回的数组已经不能使用了。
正确的做法是:
```C
int* returnArray(int size){
int* arr=malloc(sizeof(int)*size);
// 对数组进行操作
return arr;
}
```
在调用此函数后,使用完返回的数组后,需要手动释放内存,使用free(arr)。
阅读全文