奥礼网
新记
c语言中函数递归调用中的压入堆栈是什么意思啊
如题所述
举报该文章
相关建议 2011-07-29
我通俗点说:栈这个东西,你可以想象成手枪的弹夹,你装入子弹后,最后装入的子弹一定是最先打出去的,对吧?这就是栈的先进后出原则。递归函数,你想想,一定是最后执行的函数最先执行完,然后执行倒数第二个...以此类推。压入栈的意思就是现在内存给你一个弹夹,函数就是你的子弹,你把没运行一次这个函数,就是向弹夹里装了一个子弹,这就是压栈。出栈就是当找到递归函数出口后,再倒着一个一个解决刚才一大堆的函数,就像手枪吧子弹一个一个在打出去。关于栈,建议你学学汇编,一下就明白了
温馨提示:内容为网友见解,仅供参考
当前网址:
https://aolonic.com/aa/1wwkw4g4g.html
其他看法
第1个回答 2011-07-29
递归分两部,先是把复杂的函数分解成简单函数;再有简单函数的值来计算复杂的函数。前面一个过程就是压栈过程
相似回答
大家正在搜
相关问题
C语言中,函数调用是通过栈实现的,怎样理解这句话?
函数调用过程中栈到底是怎么压入和弹出的
大家都知道函数进行递归调用的时候 是进行了压栈这个操作的。 ...
c语言的 递归函数,是不是这个样子的,弹栈就逐个弹出!
c语言中fun()函数递归
关于C语言递归与系统栈的问题。
C语言中的栈、堆是什么?
什么是堆和栈?函数压栈是怎么回事?