cc++函数调用栈入栈顺序

cc++函数调用栈入栈顺序,第1张

先看一段代码:


{

...
6   bool flag;
7   int a = 12;
8   char c = 'k';
9   addToFirst(a, c);//把结果赋给第一个参数,引用传递
10  flag = 12 > a;

...
}

当运行到行9时,系统栈上新建一个栈帧,依次入栈:c,a,下一条指令地址,如下:

第10行代码指令地址//代码区调用指令的下一条指令地址压入栈中,供函数返回时继续执行 (栈顶)

a

c

...原先栈的内容(栈底)

具体可参考: 函数调用之堆栈原理 , 函数调用的压栈出栈过程

 

 Linux 中的各种栈:进程栈 线程栈 内核栈 中断栈_Yakir Yang的博客-CSDN博客_内核栈

 

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/567816.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-09
下一篇 2022-04-09

发表评论

登录后才能评论

评论列表(0条)

保存