关于函数返回值的问题???

chenlu1982 2003-03-07 08:43:19
一个函数的返回值能是数组类型吗??
请指教。why?
...全文
19 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
wshcdr 2003-03-10
  • 打赏
  • 举报
回复
不懂
zhouhu 2003-03-09
  • 打赏
  • 举报
回复
ing
killer1984 2003-03-09
  • 打赏
  • 举报
回复
就是只能通过传址返回指针,不过不安全,容易出错,用静态变量要好一点,其实直接用全局变量不就好了。
SwordMan2001 2003-03-09
  • 打赏
  • 举报
回复
不赞成Frank001(Frank)的做法,可能会有问题。

不应该用static,应该用新分配的堆(new or malloc)
int *i=new int[5];
zhaoyangsgg 2003-03-09
  • 打赏
  • 举报
回复
可以编一个实际的小程序运行一下不就知道 了吗!!
象楼上的那个可以试试!!
Frank001 2003-03-08
  • 打赏
  • 举报
回复
你可以这样做:

int* fn() //返回数组指针
{
static int i[5]; //注意一定要声明为static,
return i;
}

void main()
{
int* i;
i=fn();
}
hddhddhdd 2003-03-08
  • 打赏
  • 举报
回复
楼主,你的一丝只是一个想法还是遇到具体事例了?

我还没有见过这样的事
如果是后者,能不能把题目贴出来?
bm1408 2003-03-08
  • 打赏
  • 举报
回复
不能!
只有通过指针来实现!
hex714 2003-03-07
  • 打赏
  • 举报
回复
好像函数的返回值本身不能是数组。但是数组在作为参数时,是地址传递的,也就是说函数本身可以改变传递进去的实参,所以相当于返回值了。
wangk 2003-03-07
  • 打赏
  • 举报
回复
可以是数组类型,也可以是结构,类等.
但它的本质是指针.
传入传出的是数组的首个元素的地址.
freewing 2003-03-07
  • 打赏
  • 举报
回复
数组指针

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧