调用递归过程或函数时,处理参数及返回地址为什么要用栈来实现?
问:调用递归过程或函数时,处理参数及返回地址需要用一种称为( )的数据结构。
答:栈
参考解析
当在一个函数的运行期间调用另一个函数时,在运行被调用函数之前,系统需要先完成3个操作,即将所有的实参、返回地址等信息传递给被调函数保存;
为被调函数的局部变量分配存储区;
将控制转移到被调函数的入口。
从被调函数返回调用函数之前,系统还要完成3个操作,即保存被调函数的计算结果;
释放被调函数的数据区;
依照被调函数保存的地址将控制转移到调用函数。
当有多个函数构成嵌套调用时,按照"后调用先返回"的原则,..
原创
2021-06-16 23:06:50 ·
7288 阅读 ·
0 评论