程序内存空间布局以及对栈顶,栈底的理解

一、程序的内存的空间布局: 栈  由编译器自动分配释放管理。局部变量及每次函数调用时返回地址、以及调用者的环境信息(例如某些机器寄存器)都存放在栈中。新被调用的函数在栈上为其自动和临时变量分配存储空间。通过以这种方式使用栈,C函数可以递归调用。 堆 需要由程序员分配释放管理,若程序员不释放,程序结束时可能由OS回收。通常在堆中进行动态存储分配。  非初始化数据段 通常将此段称为b s s段,这一名
相关文章
相关标签/搜索