自定义函数中创建的数组怎么传递回主函数

 我来答
cdyzxy
2017-04-18 · TA获得超过2.1万个赞
知道大有可为答主
回答量:1.4万
采纳率:85%
帮助的人:4027万
展开全部
函数中的数组一般是开设在栈中,返回后被舍弃
如果数组是用malloc函数或者c++的new在堆中申请的,可以将指针传递回来,然后由调用者使用,完毕后由调用这负责释放;
int * fun(int n) { int p; p=(int *)malloc(n*sizeof(int)); return p; }
如果数组开设成静态的,也可以将其指针传递给调用者使用,这个数组会一直保留
int *fun(int n) { static int a[20]; int i; for ( i=0;i<20;i++ ) a[i]=i+n; return a; }
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式