什么是堆,什么是栈

Viewed 36

什么是堆,什么是栈?

1 Answers

堆是动态alloc的,栈是跳转的时候保存临时变量的,先进后出。栈自顶向下,堆自下向上。一般处理器有个SP保存栈指针,进去函数就向下减入栈,返回就SP加出栈。堆没有空间时候就会alloc失败,堆在处理器就是一块没有被代码和栈用到的一片空间。我目前理解是这样的。