Advertisement

78-C++函数调用过程(v1.0)

阅读量:

当前演示的函数调用过程是依赖于C语言默认的调用约定——_cdecl

其他的调用约定还有__stdcall和__fastcall,三种都是C、C++使用的调用规则,三种调用约定的差异并不大,只是负责的事情有所不同

一:参数入栈

1.4 字节级别的参数依次压入栈中进行处理。顺序为从右向左压入栈中进行操作,并最先处理的是最后一个参数。实现方式是通过寄存器的push指令完成的。

在这里插入图片描述

先将b入栈,同时esp往上走,再将a入栈(从右向左入栈)

在这里插入图片描述

2.8字节参数入栈,顺序:从右向左,方式:使用寄存器push带入

在这里插入图片描述

全部评论 (0)

还没有任何评论哟~