C++--问题18--堆和栈的区别

C++--问题18--堆和栈的区别 1、堆、栈空间分配区别 栈(操作系统):由操作系统(编译器)自动分配释放 ,存放函数的参数值,局部变量的值等。 堆(操作系统): 从定义上,堆是由new和malloc开辟的一块内存,一般由程序员手动管理,分配释放, 若程序员不释放,程序结束时可能由OS回收,分配方式倒是类似于链表。 堆空间因为会有频繁的分配释放操作,会产生内存碎片。 堆的生长空间向上,地址越来越
相关文章
相关标签/搜索