打印

C语言函数调用困惑~

[复制链接]
1549|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
dengwuyu111|  楼主 | 2012-11-5 13:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
假如有两个函数A,B.  void A( unsigned char a)
{
    if(a)
    {
    }
    else
    {
          B();
    }
}

void B(void)
{
      A(1);
}

这样的函数能正常执行吗? 假如没有a判断,两个函数是否会是死循环呢??

相关帖子

沙发
ayb_ice| | 2012-11-5 13:59 | 只看该作者
本帖最后由 ayb_ice 于 2012-11-5 14:23 编辑

这就是递归嘛,需要有退出条件。否则无限循环,比较常见,特别在相关数学算中。。。

使用特权

评论回复
板凳
原野之狼| | 2012-11-5 14:06 | 只看该作者
递归调用  需要设置退出条件  否则失去意义  
另外需要考虑递归深度 否则会导致栈击穿

使用特权

评论回复
地板
dengwuyu111|  楼主 | 2012-11-5 14:09 | 只看该作者
谢谢楼上两位。。~

使用特权

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

本版积分规则

11

主题

146

帖子

2

粉丝