C ++返回值存储在堆栈框架中

时间:2020-09-27 15:41:01

标签: c++ stack callstack function-call

int f(int a, int b){
    return a+b;
}

int main(){
    f(1,2);
}

在此示例中,当调用函数f时,没有特定的变量存储a b的相加结果。我的问题是:a+b的结果将存储在哪里?

1 个答案:

答案 0 :(得分:1)

它将被移至临时寄存器。
它将加载值,然后调用f(int,int) 看一下反汇编: enter image description here