怎样改变人缘不好的人:一个汇编语言问题

来源:百度文库 编辑:高校问答 时间:2024/04/30 05:12:40
为什么用call调用子程序时会有堆栈不平衡的问题 能解答一下吗
能描述下call和ret时堆栈的运行以解释为什么堆栈会不平衡嘛?

因为函数的调用方式不一样,c语言是_cdecl方式,主调函数负责平衡堆栈,所以要在后面加上平衡语句;而标准的windows API函数是_stdcall方式,堆栈是由被调函数平衡,所以不用加平衡语句。