| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1654 人关注过本帖
标题:[求助]怎么返回一个数组值?
只看楼主 加入收藏
wangpai7776
Rank: 1
来 自:北京
等 级:新手上路
帖 子:56
专家分:0
注 册:2006-1-6
收藏
 问题点数:0 回复次数:14 
[求助]怎么返回一个数组值?
我想在函数中,返回一个数组值,请问该怎么做?
比如定义一个函数
int f()
{
int *number=new int [5];
return number;
}
这样可以吗???如果不行,该怎么做???
搜索更多相关主题的帖子: int number 函数 定义 
2006-03-12 00:26
wanglff
Rank: 2
等 级:新手上路
威 望:5
帖 子:375
专家分:0
注 册:2005-12-21
收藏
得分:0 
int f()
{
int *number=new int [5];
return number;//这个是返回的时候数组的地址啊.\\该成return *number;可以返回数组值
delete []number;//还需要这个把空间释放
}
不知道解释的对不对

自强不息:)
2006-03-12 09:41
poppylx
Rank: 1
等 级:新手上路
帖 子:367
专家分:0
注 册:2004-9-27
收藏
得分:0 


如果是要返回一个数组
int* f()
{
.........
return number //如楼上所说 返回数组的地址值
}
调用时 int *arry = f() ; cout << arry[0] ;





动于心而静如水
2006-03-12 09:52
wangpai7776
Rank: 1
来 自:北京
等 级:新手上路
帖 子:56
专家分:0
注 册:2006-1-6
收藏
得分:0 
int f()
{
int *number=new int [5];
return *number;
delete []number;
}
这样就能用函数返回一个数组的值了吗???
我怎么实现不了阿???请问,能给个例子吗???

认真你就输了
2006-03-13 09:51
wanglff
Rank: 2
等 级:新手上路
威 望:5
帖 子:375
专家分:0
注 册:2005-12-21
收藏
得分:0 

#include<iostream>
using namespace std;

int f(int *)//嘿嘿
{
int *number=new int [5];
return *number;
delete []number;
}
int main()
{
int a[5]={1,2,3,4,5};
int *p;
p=a;
cout<<f(p);
return 0;
}返回第一个数组值不知道对不对

[此贴子已经被作者于2006-3-13 13:50:14编辑过]


自强不息:)
2006-03-13 12:56
wangpai7776
Rank: 1
来 自:北京
等 级:新手上路
帖 子:56
专家分:0
注 册:2006-1-6
收藏
得分:0 

谢谢wanglff!!!


不过,编译器提示出错信息error C2660: 'f' : function does not take 1 parameters

是不是应该在原来的函数上,增加一个指针,作为行参啊?

[此贴子已经被作者于2006-3-13 13:42:20编辑过]


认真你就输了
2006-03-13 13:13
dipengbo13
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2006-3-13
收藏
得分:0 
还没看到那呢,有点迷茫.
标识符可以有" * "吗?

o别拿伱Dě性格..^o^︷挑戰Wǒ的脾气~︻╋████◤ 底博
2006-03-13 14:06
柳儿
Rank: 6Rank: 6
等 级:贵宾
威 望:25
帖 子:1830
专家分:30
注 册:2004-9-23
收藏
得分:0 
用一个变量接受f()函数的返回值,然后再cout &lt;&lt;

成功会使人骄傲。如果你骄傲自大,你就会停止学习。不学习,人就停止了进步
2006-03-13 14:35
柳儿
Rank: 6Rank: 6
等 级:贵宾
威 望:25
帖 子:1830
专家分:30
注 册:2004-9-23
收藏
得分:0 

#include <iostream>
using namespace std;

int* f()
{
int * number = new int[5];
for (int i=0;i<5 ;i++ )
{
number[i]=i;
}
return number;

}

int main()
{
int* array = f();
for (int i =0;i<5 ;i++ )
{
cout << array[i] << endl;
}
delete []array;
array = NULL;
return 0;
}

这个程序可以获得所有数组值。


成功会使人骄傲。如果你骄傲自大,你就会停止学习。不学习,人就停止了进步
2006-03-13 14:41
wanglff
Rank: 2
等 级:新手上路
威 望:5
帖 子:375
专家分:0
注 册:2005-12-21
收藏
得分:0 


看到自己写的
总觉得怪怪的
还是柳儿厉害

自强不息:)
2006-03-13 14:50
快速回复:[求助]怎么返回一个数组值?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021825 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved