|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 【函数】返回二维数组的函数怎么声明?
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
3555
人关注过本帖
标题:
【函数】返回二维数组的函数怎么声明?
只看楼主
加入收藏
蚕头燕尾
来 自:Gryffindo
等 级:
贵宾
威 望:
12
帖 子:734
专家分:1546
注 册:2013-3-24
结帖率:
96.08%
楼主
收藏
已结贴
√
问题点数:10 回复次数:15
【函数】返回二维数组的函数怎么声明?
【RT】
感觉突然好像脑袋抽了,不知道怎么写了?
2013-08-17 20:05
举报帖子
使用道具
赠送鲜花
蚕头燕尾
来 自:Gryffindo
等 级:
贵宾
威 望:
12
帖 子:734
专家分:1546
注 册:2013-3-24
第
2
楼
收藏
得分:0
int **function();
int [][number]function();
int *[number]function();
以上是我脑袋抽风的时候自己构造出来的,然后突然就不知道该怎么写这个声明了。。。
(我想返回一个3*3的矩阵)
学习编程,为的是表达自己的思想,而不是被别人的思想所禁锢。要先明白自己想干嘛,而不要先问别人让你干嘛。
Black Cat Hello Tomorrow~
2013-08-17 20:08
举报帖子
使用道具
赠送鲜花
awisebird_
等 级:
论坛游侠
威 望:
1
帖 子:82
专家分:185
注 册:2013-7-6
第
3
楼
收藏
得分:0
int **function();//这个应该可以吧,没有试过吗?
2013-08-17 20:21
举报帖子
使用道具
赠送鲜花
beyondyf
等 级:
贵宾
威 望:
103
帖 子:3282
专家分:12654
注 册:2008-1-21
第
4
楼
收藏
得分:10
直接返回int *就行,之后再强制转换成int[][3]用。
但这样的方式只能返回一个指针,数组实体要么通过参数传递给函数,要么在函数内动态申请内存在函数外手工释放。
想返回一个数组实体可以将数组封装在结构中返回。
重剑无锋,大巧不工
2013-08-17 20:25
举报帖子
使用道具
赠送鲜花
蚕头燕尾
来 自:Gryffindo
等 级:
贵宾
威 望:
12
帖 子:734
专家分:1546
注 册:2013-3-24
第
5
楼
收藏
得分:0
我上面说的我都试过了,貌似都是不对的。
学习编程,为的是表达自己的思想,而不是被别人的思想所禁锢。要先明白自己想干嘛,而不要先问别人让你干嘛。
Black Cat Hello Tomorrow~
2013-08-17 20:25
举报帖子
使用道具
赠送鲜花
蚕头燕尾
来 自:Gryffindo
等 级:
贵宾
威 望:
12
帖 子:734
专家分:1546
注 册:2013-3-24
第
6
楼
收藏
得分:0
回复 4楼 beyondyf
意思就是说,函数的返回值不能直接是二维数组,对吗?
学习编程,为的是表达自己的思想,而不是被别人的思想所禁锢。要先明白自己想干嘛,而不要先问别人让你干嘛。
Black Cat Hello Tomorrow~
2013-08-17 20:27
举报帖子
使用道具
赠送鲜花
beyondyf
等 级:
贵宾
威 望:
103
帖 子:3282
专家分:12654
注 册:2008-1-21
第
7
楼
收藏
得分:0
回复 6楼 蚕头燕尾
在C语言里,对。
重剑无锋,大巧不工
2013-08-17 20:30
举报帖子
使用道具
赠送鲜花
awisebird_
等 级:
论坛游侠
威 望:
1
帖 子:82
专家分:185
注 册:2013-7-6
第
8
楼
收藏
得分:0
以下是引用
beyondyf
在2013-8-17 20:25:15的发言:
直接返回int *就行,之后再强制转换成int[][3]用。
但这样的方式只能返回一个指针,数组实体要么通过参数传递给函数,要么在函数内动态申请内存在函数外手工释放。
想返回一个数组实体可以将数组封装在结构中返回。
有道理
2013-08-17 20:30
举报帖子
使用道具
赠送鲜花
蚕头燕尾
来 自:Gryffindo
等 级:
贵宾
威 望:
12
帖 子:734
专家分:1546
注 册:2013-3-24
第
9
楼
收藏
得分:0
回复 7楼 beyondyf
说话好严密。
那请问在C++里有什么比较常见,比较好用的办法吗?(其实我写的就是C++的代码,因为题目不难,基本没有用到class)
我先试下那个强制类型转换的办法,听起来好像挺有道理的。反正返回值就是返回一个地址就是了,到时候怎么用还是可以商榷的对吧。
学习编程,为的是表达自己的思想,而不是被别人的思想所禁锢。要先明白自己想干嘛,而不要先问别人让你干嘛。
Black Cat Hello Tomorrow~
2013-08-17 20:36
举报帖子
使用道具
赠送鲜花
beyondyf
等 级:
贵宾
威 望:
103
帖 子:3282
专家分:12654
注 册:2008-1-21
第
10
楼
收藏
得分:0
C++在这点上C没有区别,为了保证程序的效率它也将内存管理交给程序员自己完成。
通常的做法仍是使用参数将数组指针传递给函数,函数返回的还是这个传入的指针,为的是方便级联运算。
在C#、JAVA这样的语言里由于数组本身就被当作对象,内存由系统自动管理,所以可以直接返回数组。
重剑无锋,大巧不工
2013-08-17 20:44
举报帖子
使用道具
赠送鲜花
16
1/2页
1
2
快速回复:
【函数】返回二维数组的函数怎么声明?
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.016514 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved