首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
请比较一下堆和栈的区别?
[问答题]
请比较一下堆和栈的区别?
添加笔记
求解答(0)
邀请回答
收藏(4)
分享
纠错
1个回答
添加回答
0
vector<>
堆区和栈区的区别
管理方式不同:
堆由程序员管理
栈是由操作系统自动管理
碎片问题:
堆:频繁的new/malloc会造成大量的内存碎片
栈:先入后出的结构,进出一一对应,不会产生内存碎片。
生长方向:
堆向上,向高地址方向增长
栈向下,向低地址方向生长
分配方式:
堆是动态分配,没有静态分配
栈中有静态分配也有动态分配,静态分配是由编译器完成,动态分配由alloca函数分配,编译器自动释放,无需程序员实现。
空间大小:
堆是不连续的内存空间(用链表来存储空闲内存地址),空间大。
栈和数据结构中的栈一样,是一块连续的内存空间,空间小
发表于 2020-03-11 15:12:54
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
C++工程师
iOS工程师
安卓工程师
运维工程师
前端工程师
算法工程师
欢聚集团
2018
PHP工程师
Java工程师
上传者:
小小
难度:
1条回答
4收藏
967浏览
热门推荐
相关试题
设一组初始记录关键字序列为(30,...
Java工程师
C++工程师
iOS工程师
安卓工程师
运维工程师
前端工程师
算法工程师
测试工程师
安全工程师
2018
奇安信
评论
(1)
下面描述中,符合结构化程序设计风格...
搜狐
Java工程师
C++工程师
iOS工程师
安卓工程师
运维工程师
前端工程师
算法工程师
PHP工程师
2018
评论
(1)
分页系统的逻辑地址结构是一维的,分...
操作系统
评论
(1)
关于分段系统与分页系统的区别,描述...
操作系统
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题