数组开在堆里和开在栈里的区别

1.开在栈里的数组(int a[n];)在出栈也就是函数结束时会释放掉,所以如果函数想返回一个数组的话,不能返回函数里面的数组的首地址,但是开在堆里(int *a=new int[n];)就可以。

2.栈空间有限,递归的时候注意层数不能太深,在函数里的数组不能太大。

原文地址:https://www.cnblogs.com/Reindeer/p/5727268.html