| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 471 人关注过本帖
标题:[讨论]关于return的问题
取消只看楼主 加入收藏
deamonhdb
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2007-10-7
收藏
 问题点数:0 回复次数:1 
[讨论]关于return的问题

今天做堆栈时不太明白return的用法
具体字函数是这样的:
datatype pop(stack*s,datatype&e)
{
e= s->elements[s->top];
s->top--;
return (1);

}
但是改成return(2) return(3) return(4) return(5)....return(100)结果都是正确的,用DEBUG单步跟踪,发现过程没区别
但是如果只是return 编译时会提示 函数必需有返回值,也就是说只有return不是return (0),我甚至换成换成负数return(-1)
都是正确的 return(0)也是正确的
问一下,return的具体用法,有没有什么特殊的用途?

搜索更多相关主题的帖子: return 
2007-10-29 15:20
deamonhdb
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2007-10-7
收藏
得分:0 

恩,这样说也可以,但是看看下面的程序,是老师PPT的内容:

uint PopS(seqstack *S,datatype&e)
{ if (EmptyS(S))
{ print (Stack Underflow);
return 0;
} //下溢
else
{ e= S->elements[S->Top];
S->Top--;
return 1;
}
}
那怎么解释呢?
老师说return 1有两层意思,1是说明有返回值,2是返回的数正常
这样对吗?好像与版主说的相反
exit(0)可以用版主的说法解释,用在return上好像不行
2007-10-29 16:31
快速回复:[讨论]关于return的问题
数据加载中...
 
   



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

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