打印

请教:“重入”与“递归”有什么异同?

[复制链接]
1951|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zyok|  楼主 | 2008-10-24 01:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
...
沙发
simon21ic| | 2008-10-24 03:29 | 只看该作者

不同的概念

使用特权

评论回复
板凳
救火车| | 2008-10-24 07:51 | 只看该作者

研究这个干什么?这是单片机编程不许用的方法。

使用特权

评论回复
地板
| | 2008-10-24 08:54 | 只看该作者

确实是不同概念.递归是一种函数调用的方法.

他必须是重入的..

使用特权

评论回复
5
HWM| | 2008-10-24 18:57 | 只看该作者

在程序设计范畴中,没什么差异。因为两者所需条件是等价

使用特权

评论回复
6
xxo21| | 2008-10-24 21:55 | 只看该作者

递归有相对明确的重入点

中断中调用被中断的函数即重入
单片机因为堆栈空间有限应该避免使用
clib中很多函数比如printf就是可重入的

使用特权

评论回复
7
mxh0506| | 2008-10-24 22:18 | 只看该作者

有同也有异

递归其实就是函数反复调用其自身,需要注意递归深度,否则堆栈就溢了
重入是某个函数在结束之前又被调用,需要注意其内部引用的变量是否允许重入.

使用特权

评论回复
8
zyok|  楼主 | 2008-10-25 00:45 | 只看该作者

呵呵,搞清楚了,谢谢各位...

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

65

主题

2703

帖子

3

粉丝