关于函数的返回值与参数的问题

我对返回值和参数不太了解。请问:1,为什么有的函数不需要返回值,有的却需要?什么时候需要,什么时候不需要?2,为什么有的函数不需要参数,有的却需要?什么时候需要,什么时候... 我对返回值和参数不太了解。
请问:
1,为什么有的函数不需要返回值,有的却需要?什么时候需要,什么时候不需要?
2,为什么有的函数不需要参数,有的却需要?什么时候需要,什么时候不需要?
展开
 我来答
伊博辰龙
2016-03-02 · 知道合伙人教育行家
伊博辰龙
知道合伙人教育行家
采纳数:106 获赞数:432
本人毕业于河南师范学院物理学专业,对初高中物理教学有一定研究

向TA提问 私信TA
展开全部

关于函数的返回值与参数的问题解答如下:

1、当使用指针做为函数的返回值时,主函数处的char *p;将获得调用函数char *pf;的值,即一个地址值,如oxAE72。此时需要我们注意的是该地址值所指向的空间是否存在(即已向操作系统声明注册,不会被释放,即可能被其他操作修改);

2、使用栈内存返回指针是明显错误的,因为栈内存将在调用结束后自动释放,从而主函数使用该地址空间将很危险。

3、使用堆内存返回指针是正确的,但是注意可能产生内存泄露问题,在使用完毕后主函数中释放该段内存。 

HenryNg
推荐于2018-03-11 · TA获得超过219个赞
知道小有建树答主
回答量:332
采纳率:0%
帮助的人:300万
展开全部
1,为什么有的函数不需要返回值,有的却需要?什么时候需要,什么时候不需要?

如果你写的函数只是完成一些处理,而不需要得到处理后的结果就不需要返回值了,比如写个函数用于向数据库写入一条记录或向一个文本写入一些内容,当然实践中做这些事还是需要返回值的,因为我们需要知道这个记录有没有写入成功(成功返回真,失败返回假),这个内容有没有成功地写入一个文本文件。
所以有的需要返回值,有的不需要。什么时候需要什么时候不需要得看具体的情况来定。

2,为什么有的函数不需要参数,有的却需要?什么时候需要,什么时候不需要?

需要参数是因为函数内的操作需要具体的计算对象(参数值),比如你有个计算长方形面积的函数:GetArea(float w,float h){return x*y;},这个计算面积的函数能得到所有大大小小的长方形面积,但我们具体计算时长与宽是不确定的,所以就需要把长与宽作为参数传入函数内处理而得到长方形的面积(同上问题,这时就需要有返回值了,即长方形的面积),如长为:5,宽为:2,float area = GetArea(5.0,2.0)

我文笔不行,乱七八糟地说了一通,不知道能不能帮到你
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yaobing0687
2011-01-30 · TA获得超过988个赞
知道小有建树答主
回答量:1309
采纳率:0%
帮助的人:898万
展开全部
关于参数和返回值:
要说明这2个东西的作用,首先要弄清楚函数的作用。根据我的理解(会好理解一点),函数根据目的分为两大类:1.计算类函数 2.功能型函数 3.混合类
1.计算类函数:顾名思义,这种函数的存在是为了某些计算而存在。比如:(最常见的加法)
我的目的是根据几个数字,算出他们的和。这时候你要计算的数字就需要通过【参数(传到函数内部)】,而【和(则是通过返回值)得到】。计算类的函数一般都要参数和返回值。
2.功能性函数:这类函数是完成某些特定功能。比如:清空所有界面信息,这时候,如果界面的控件是固定的,只要将他们的值清空就行。由于【需要的东西是固定的】,就可以不要参数来传递。当然,也不要返回任何结果。
*****************************************************************
3.*混合型:这是现实中最多的情况。参数和返回值的判定要求也不固定。单都遵循这样一个原则。
-------------------------------------------------------------------------
函数内部需要外部的数据是,一般要通过参数传递。
函数外部需要内部的数据时,一般要通过返回值传递。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bxfc
2011-01-30 · TA获得超过872个赞
知道小有建树答主
回答量:1104
采纳率:0%
帮助的人:678万
展开全部
简单来说:如果你想直接拿到函数执行的结果,那么就要返回值
第二个,如果你知道你要处理什么,处理的条件去哪儿取就不一定非得要参数,有参数只是为了执行可变的情况
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhbmlong
2011-01-31 · TA获得超过133个赞
知道小有建树答主
回答量:403
采纳率:0%
帮助的人:334万
展开全部
这个是根据你需要来定的,比如说你有许多人的简历数据,你想查某人的电话,你首先要知道他的姓名,然后才能查到电话,如果写成函数的话,就是要一个姓名作为参数,而函数中根据姓名查出的电话就作为返回值了

这个问题其实不算问题的,实际应用中你会很快知道哪些要参数,哪些不要,决定不了的话,那就说明可有可无,就不用要参数了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(20)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式