首页 新闻 会员 周边 捐助

为什么不能强制转换数组首地址为指针并返回

0
悬赏园豆:10 [已解决问题] 解决于 2021-09-15 20:36

在一个函数内,为什么不能强制转换数组首地址为指针并返回
代码部分如下:
n已赋值,且return前数组中含有元素

int sparse[n+1][3];
return (int*) sparse;

报错:

main(void)的主页 main(void) | 初学一级 | 园豆:117
提问于:2021-09-15 15:44
< >
分享
最佳答案
1

return 之后,int sparse[][] 会被回收,如果成功返回了。后续访问也会出问题。
如果需要返回数据,那只能自己申请内存。另外接收者还需要负责销毁数据。

收获园豆:10
pencile | 小虾三级 |园豆:845 | 2021-09-15 17:49

原来如此,多谢。

main(void) | 园豆:117 (初学一级) | 2021-09-15 20:37
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册