回 帖 发 新 帖 刷新版面

主题:[讨论]那个ebp-4是什么意思

请问26页中的如下例子的那个ebp-4和var为什么有关系
volatile void main
int var=1;
printf("var=%d\n",var);
__asm
{

mov dword ptr [ebp-4],10h //我知道是把10h即16传过去
}
int ret=var;
printf("var=%d\n",ret);

回复列表 (共1个回复)

沙发

ebp是你的栈顶指针,ebp-4,就是指代你定义的一个局部参数的地址
这里应该是指代的是var
所以你最后的结果应该是16

我来回复

您尚未登录,请登录后再回复。点此登录或注册