关于堆和栈

1.栈和堆有什么区别  我们可从4G的地址空间上看,他们完全不同的两块内存。栈是由系统开辟,系统释放。堆是由人为开辟,人为释放。栈是由C语言中的malloc/free开辟释和放,堆是由C++中的new/delete开辟和释放。因为堆是由人员分配管理的,所以很有可能造成内存泄漏。 栈的开辟释放效率快,申请的内存是连续的。堆申请的内存不一定连续,相对于栈效率低。堆容易产生内存碎片,灵活度高。 栈是由高
相关文章
相关标签/搜索