在 C++ 中不能保证甚至有一个堆栈。即使实际上有一个,它在内存中的位置因编译器实现、平台、环境等而异......
有诸如地址随机化之类的操作系统功能,甚至会强制地址在运行之间更改。您不能尝试以编程方式确定它,因为允许编译器修改/优化您的代码。
基本上,回答这个问题的方法是解释堆栈是什么,它的大小确实不同,位置无关紧要。然后解释它的用途以及它通常是如何实现的。您甚至可以谈论早期/简单的 CPU 以及实现它的寄存器。
| 归档时间: |
|
| 查看次数: |
95 次 |
| 最近记录: |