搜索

c语言的 递归函数是不是这个样子的弹栈就逐个弹出!

gecimao 发表于 2019-04-18 14:25 | 查看: | 回复:

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  入栈:为被调函数保存实参、返回地址等信息、分配局部变量空间、并将控制转移到被调函数入口。

  2019-01-15展开全部你这个也差不多,但是函数入栈是-参数-调用我的函数下一条语句的地址-局部变量。出栈时先弹出局部变量,弹出调用我的函数的下一条语言,然后弹出局部变量 之后才继续执行。

  在C语言中的递归你可以直接理解为main-func1-func2-func3..... 出栈是func3-func2-func1-main追问你说的顺序不对,我看过编译过的汇编代码,顺序是我这里图中这样的。而且弹出并不是下一个语句,而是下一条指令!你说的很不精确,会影响使用的!!追答

  你自己看看吧,kip写的《基于x86处理器汇编语言》有说明C语言调用函数时的实现。你要是不用汇编可以不懂函数调用的过程。对了栈是从上向下走的,所以用sub指令开辟局部变量

本文链接:http://windsorflowers.net/diguixiangliangzhiling/126.html
随机为您推荐歌词

联系我们 | 关于我们 | 网友投稿 | 版权声明 | 广告服务 | 站点统计 | 网站地图

版权声明:本站资源均来自互联网,如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

Copyright @ 2012-2013 织梦猫 版权所有  Powered by Dedecms 5.7
渝ICP备10013703号  

回顶部