C语言中 递归函数 的return 返回值问题
3个回答
展开全部
return
表示从被调函数返回到主调函数继续执行,返回时可附带一个返回值,由return后面的参数指定。
return通常是必要的,因为函数调用的时候计算结果通常是通过返回值带出的。
如果函数执行不需要返回计算结果,也经常需要返回一个状态码来表示函数执行的顺利与否(-1和0就是最常用的状态码),主调函数可以通过返回值判断被调函数的执行情况。
return语句后面具体是什么内容,这就要具体情况具体分析了:
(1)
在返回类型是char的函数中,return后应该是char类型的值;
(2)
在返回类型是int的函数中,如果是要停止函数的调用,最好应该为0;其他的按照你的目的而定,只要是int
类型就行了
(3)
在返回类型是结构类型的函数中,return后应该是结构的一个实例对象。
总之,函数定义为什么样的返回类型,该函数中return后就应该是相应类型的值。
表示从被调函数返回到主调函数继续执行,返回时可附带一个返回值,由return后面的参数指定。
return通常是必要的,因为函数调用的时候计算结果通常是通过返回值带出的。
如果函数执行不需要返回计算结果,也经常需要返回一个状态码来表示函数执行的顺利与否(-1和0就是最常用的状态码),主调函数可以通过返回值判断被调函数的执行情况。
return语句后面具体是什么内容,这就要具体情况具体分析了:
(1)
在返回类型是char的函数中,return后应该是char类型的值;
(2)
在返回类型是int的函数中,如果是要停止函数的调用,最好应该为0;其他的按照你的目的而定,只要是int
类型就行了
(3)
在返回类型是结构类型的函数中,return后应该是结构的一个实例对象。
总之,函数定义为什么样的返回类型,该函数中return后就应该是相应类型的值。
展开全部
所谓函数返回值是一个函数在运算结束以后向调用它的母函数或者系统反馈一个值,这个值可以是各种变量类型.
举个简单的例子:
int
add(int
a,int
b)
{
return
(a+b);
}
int
main()
{
int
res;
res=add(3,4);
printf("%d",res);
return
0;
}
在主函数main中调用子函数add,并传递参数3和4过去,add经过运算后得到值7,通过return语句将得到的值返回给调用它的main函数供其使用,而在main中,返回值被用于给res赋值。
函数返回值就可以理解为解决一个问题以后得到的结论,把这个结论交给别人,就像写在书上成为一个定理,来让别人使用。
举个简单的例子:
int
add(int
a,int
b)
{
return
(a+b);
}
int
main()
{
int
res;
res=add(3,4);
printf("%d",res);
return
0;
}
在主函数main中调用子函数add,并传递参数3和4过去,add经过运算后得到值7,通过return语句将得到的值返回给调用它的main函数供其使用,而在main中,返回值被用于给res赋值。
函数返回值就可以理解为解决一个问题以后得到的结论,把这个结论交给别人,就像写在书上成为一个定理,来让别人使用。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果你在函数定义的复合语句前使用了void
则什么都不返回;如果没有void,返回的是null,要显示的话将什么也不会显示。一般要接收返回的值,还要建立一个接受数值来执行行为的函数。
则什么都不返回;如果没有void,返回的是null,要显示的话将什么也不会显示。一般要接收返回的值,还要建立一个接受数值来执行行为的函数。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询