linux 进程内存空间布局如下图:

数据结构 堆 栈 是什么 区别_数据结构

栈是由高地址向低地址增长。

堆是由低地址向高地址增长。

当栈或堆现有的大小不够用的时候,它将按照图中的增长方向扩大自身的尺寸,直到预留的空间被用完为止。