| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 8874 人关注过本帖
标题:c语言 return
只看楼主 加入收藏
q3286446
Rank: 1
来 自:中国
等 级:新手上路
帖 子:31
专家分:6
注 册:2010-5-24
收藏
 问题点数:0 回复次数:14 
c语言 return
不知道怎么去理解 return 为什么要用返回值,他的真正的用途是什么? 各位能否解释一下
能不能用举个例子来解释一下啊?
搜索更多相关主题的帖子: c语言 return 
2010-05-27 13:50
myhnuhai
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:3
帖 子:425
专家分:1725
注 册:2010-3-17
收藏
得分:0 
函数的值是指函数被调用之后,执行函数体中的程序段所取得的并返回给主调函数的值。如调用正弦函数取得正弦值,调用【例1】的max函数取得的最大数等。对函数的值(或称函数返回值)有以下一些说明:
1)    函数的值只能通过return语句返回主调函数。
return  语句的一般形式为:
return 表达式;
或者为:
return (表达式);
该语句的功能是计算表达式的值,并返回给主调函数。在函数中允许有多个return语句,但每次调用只能有一个return 语句被执行,因此只能返回一个函数值。
2)    函数值的类型和函数定义中函数的类型应保持一致。如果两者不一致,则以函数类型为准,自动进行类型转换。
3)    如函数值为整型,在函数定义时可以省去类型说明。
4)    不返回函数值的函数,可以明确定义为“空类型”,类型说明符为“void”。如【例2】中函数s并不向主函数返函数值,因此可定义为:
    void s(int n)
    { ……
     }
一旦函数被定义为空类型后,就不能在主调函数中使用被调函数的函数值了。例如,在定义s为空类型后,在主函数中写下述语句
    sum=s(n);
就是错误的。
为了使程序有良好的可读性并减少出错, 凡不要求返回值的函数都应定义为空类型。
【例1】
int max(int a,int b)
{
    if(a>b)return a;
    else return b;
}
main()
{
    int max(int a,int b);
    int x,y,z;
    printf("input two numbers:\n");
    scanf("%d%d",&x,&y);
    z=max(x,y);
    printf("maxmum=%d",z);
}
【例2】
main()
{
    int n;
    printf("input number\n");
    scanf("%d",&n);
    s(n);
    printf("n=%d\n",n);
}
int s(int n)
{
    int i;
    for(i=n-1;i>=1;i--)
      n=n+i;
    printf("n=%d\n",n);
}

这些是谭浩强教程里的 希望对你有所帮助

不要让肮脏的记忆,迷失了原本纯洁的心灵!
2010-05-27 13:57
编程小豪
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2010-5-27
收藏
得分:0 
怎么说呢。。有多个函数,就相当于多个人一样。你是主管。也就是主函数。你让他做一件事。最后你怎么知道他做了没???
返回值就像是他的成果一样的。当然有的成果你眼睛就能看到。。就不用返回了。也就是返回个空
呵呵。不知道说的合理不……
2010-05-27 14:05
game6666
Rank: 2
等 级:论坛游民
帖 子:25
专家分:24
注 册:2010-4-23
收藏
得分:0 
3楼说得很形象!

坚持.........
2010-05-29 13:13
gaoce227
Rank: 4
来 自:山东
等 级:业余侠客
帖 子:134
专家分:218
注 册:2008-4-5
收藏
得分:0 
return就是返回结果啦。和函数类型也有关系了,往这方面考虑就好了。
2010-05-29 13:31
vs_inzaghi
Rank: 5Rank: 5
来 自:湖北
等 级:职业侠客
威 望:1
帖 子:303
专家分:364
注 册:2009-8-17
收藏
得分:0 
3楼正解……

我很懒,但我讨厌别人说我懒……
2010-05-29 18:23
吴冬
Rank: 2
来 自: 湖南岳阳
等 级:论坛游民
帖 子:33
专家分:55
注 册:2010-5-22
收藏
得分:0 
函数调用后要把子函数的结果返回给主函数任何一个程序都是从主函数{main()}开始也是到{main()}结束
注意   return (只能返回一个值)
2010-05-29 18:56
Zale_YT
Rank: 2
等 级:论坛游民
帖 子:22
专家分:15
注 册:2010-5-27
收藏
得分:0 
3楼说的通俗易懂。
2010-05-29 19:01
sweet1231990
Rank: 1
等 级:新手上路
帖 子:14
专家分:5
注 册:2010-5-19
收藏
得分:0 
回复 2楼 myhnuhai
例2的函数没有返回值
2010-05-29 21:05
zhuxu0423
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:59
专家分:101
注 册:2010-4-12
收藏
得分:0 
返回比如说 一个函数 判断x的是否大于10 如果大于10才能进行后续操作。if(x<=10){return;}……这样 在x不大于10的时候就直接返回退出函数执行了,不进行后面的操作了。答案补充
如果 函数要求返回值,则 return 是将函数内的某个结果返回 例如int sum(int a,int b){ int c; c=a+b; return c;}
2010-05-30 13:57
快速回复:c语言 return
数据加载中...
 
   



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

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