C函数与汇编
C语言是如何实现函数调用的?
有人讲的比我好: http://learn.akae.cn/media/ch19s01.html.
大致的机理为:
C语言的函数调用是利用栈实现的. 当前栈帧中保存中当前运行的函数所需的数据. 当程序中发生函数调用时, 要将参数(给子函数使用)和当前程序的位置(以便子函数返回)存到栈中, 然后重新调整栈顶与栈底(为子函数分配存储空间), 以保存子函数运行所需数据. 当子函数返回时, 要再次调整栈顶与栈底为原来的栈顶与栈底(回收子函数的存储空间).
2012年4月04日 22:54
堆栈->栈,谢谢。
2012年4月04日 22:58
@依云: 已改, 谢谢!
2012年9月25日 22:12
『当前栈中』棧幀?