程序员

深入理解函数调用原理

2021-01-04  本文已影响0人  CoderCat

这是一篇讲述函数调用原理的文章,通过大量的示意图从比较基础的概念开始阐述函数调用时堆栈的完整变化过程,同时还会通过具体例子来分析在X-64平台上函数调用在汇编级的表示,从而深刻理解函数调用原理。最后会提供几个例子来发现C语言函数栈帧的一些有意思的行为。

全文将带领你领略函数与栈的魅力,文章提供了gitbook的阅读方式。
如果你觉得对你有帮助,可以来到文章的github仓库点个star啊!

目录

本文可以收获什么?

其他

文中有一个重要的概念内存对齐没有提及,它不属于函数调用范畴之内。我在构造示例时避免了编译器为了内存对齐而生成一些额外的指令,所以文中见不到它的影子。如果你有兴趣可以通过网络去了解与它相关的内容。

相关资源

绘图工具

文中所有图片都使用了excalidraw作为绘图工具,这是一款非常棒的在线绘图工具,它提供了不同风格的绘制模式。

上一篇下一篇

猜你喜欢

热点阅读