首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
课程
专栏·文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
在努力的羚羊很讲道理
安徽科技学院 植物生产类
发布于安徽
关注
已关注
取消关注
@Hello_WordN:
嵌入式面经
1.(内存)堆和栈的区别⭐堆栈空间分配不同:栈由操作系统自动进行分配和释放,用于存放函数的参数值、局部变量的值等,具有高效性。堆一般由程序员手动进行分配和释放,效率比栈低很多。堆栈缓存方式不同:栈使用一级缓存,存储在处理器核心中,调用完成后立即释放,速度较快。堆存储在二级缓存或主存中,速度相对较慢。生长方向:堆:堆的分配方向是向上的,即向地址较大的方向分配。当堆需要扩展时,会向高地址方向增长。栈:栈的分配方向是向下的,即向地址较小的方向分配。当栈需要扩展时,会向低地址方向增长。生命周期:堆:堆上的内存在分配时并不会被立即释放,需要手动进行内存释放操作。堆上的数据可以在程序的任意位置进行访问,不受函数的调用关系限制。栈:栈上的内存分配和释放是自动进行的,随着函数的调用和返回进行相应的操作。栈上的数据只在特定的作用域内有效,函数执行完成后会自动释放。空间大小:栈的空间大小一般较小,通常最多为2MB,超过则会报溢出错误。堆的空间比较大,理论上可以接近3GB(对于32位程序来说)。能否产生碎片:2.在函数中申请堆内存需要注意什么⭐确保不要错误地返回指向栈内存的指针,因为栈内存会在函数结束时自动释放。避免在函数内部申请临时数组,因为函数执行完成后,该数组会消失。不要返回指向常量区的内存空间,因为它们无法修改且获取它们没有意义。使用传入一级指针无法解决问题,因为函数内部指针的修改不会影响传入的指针。在分配堆内存时,确保空间足够存储所需数据,避免访问越界和产生未定义行为。解决办法如下:使用二级指针来返回申请的堆内存的地址,通过间接引用来修改指针值,从而确保在函数外部能够获取到堆内存的内容。使用指针函数来解决问题,即返回通过malloc函数申请的堆内存的地址,这样可以在函数外部使用free函数释放该内存。3.请你说说内存碎片⭐内存碎片是指在内存管理过程中产生的未被有效利用的零散、不连续的内存空间。主要分为两种类型:内部碎片和外部碎片。内部碎片:是由于固定大小的内存分配方式或对齐要求等原因导致的未被利用的小空间。当分配给进程的内存块大于所需的大小时,其中的剩余空间就成为了内部碎片。外部碎片:是由于存在未分配的连续内存空间太小而不能满足分配请求,从而导致这些内存无法被有效利用。解决内存碎片问题的方法可以包括:
点赞 7
评论 1
全部评论
推荐
最新
楼层
秋招专场
校招火热招聘中
官网直投
相关推荐
s8x
05-29 10:36
已编辑
门头沟学院 计算机类
为什么美团都挂了的志愿,又复活了
rt,之前二面完进人才库了,现在这个志愿二又复活了,约了晚上一面
美团一面926人在聊
点赞
评论
收藏
转发
C_Wang95
05-29 19:51
同程旅行_Java后端开发(实习员工)
offer选择
想请各位大佬帮我选一下offer,拜托了🙏
选了这个offer,你有没有后悔?
来选选带哪个offer回家过年
点赞
评论
收藏
转发
yctc王雨
04-26 13:19
盐城师范学院 计算机类
我超,春招太难了吧,投了一天都没人回复 感觉自己凉了原地失业
点赞
评论
收藏
转发
何安1
05-31 14:34
北京交通大学 电子信息类
我太菜了,希望给点建议😭😭
点赞
评论
收藏
转发
大高佬
05-27 22:56
奇安信_信息安全工程师(准入职员工)
奇安信暑期实习内推
奇安信2025届暑期实习内推码【DS5mfqSV】4.22启动,米哈游,可转正!快来加入网安一哥!公司简介国资背景,科创板“网安一哥”,网络安全领域top1,新一代网络安全领军者!【招聘岗位】安全类、研发类、测试类、营销类、产品类、技术支持类【招聘对象】25届实习生奇安信内推码:DS5mfqSV奇安信内推码:DS5mfqSV奇安信内推码:DS5mfqSV(“虎符星计划”即暑期实习)【内推 | 推荐码】DS5mfqSV【直达内推投递页面】https://app.mokahr.com/campus_apply/qianxin/29182?recommendCode=DS5mfqSV#/jobs投递...
投递奇安信等公司7个岗位 >
点赞
评论
收藏
转发
点赞
收藏
评论
分享
回复帖子
提到的真题
返回内容
全站热榜
1
...
给你们预测一下今年的秋招!
3202
2
...
深圳蟑螂真的很可怕吗
2817
3
...
【🎁】25届硬件牛牛互助计划(1期)
2722
4
...
二本开发转测试,面试成功
2628
5
...
记录一下当前的想法 权当碎碎念
2580
6
...
阿里体检完还没发正式offer
2578
7
...
5.31拼多多服务端开发实习生一面(75min)
2269
8
...
毕业了!
2156
9
...
海康暑期实习
1992
10
...
momenta 实习 C++ 一面
1683
正在热议
#
和牛牛一起刷题打卡
#
14373次浏览
1317人参与
#
简历中的项目经历要怎么写?
#
14507次浏览
195人参与
#
不去互联网可以去金融科技
#
5641次浏览
71人参与
#
牛客帮帮团来啦!有问必答
#
1097596次浏览
16359人参与
#
面试被问第一学历差时该怎么回答
#
18472次浏览
205人参与
#
通信硬件薪资爆料
#
257162次浏览
2414人参与
#
工作两年想退休了
#
19500次浏览
243人参与
#
简历中的项目经历要怎么写
#
483199次浏览
8808人参与
#
如何看待offer收割机的行为
#
247156次浏览
3464人参与
#
简历无回复,你会继续海投还是优化再投?
#
23589次浏览
331人参与
#
实习生应该准时下班吗
#
93761次浏览
710人参与
#
你收到了团子的OC了吗
#
531491次浏览
6306人参与
#
参加过提前批的机械人,你们还参加秋招么
#
14134次浏览
343人参与
#
你的秋招进行到哪一步了
#
397375次浏览
6690人参与
#
晒一晒我的offer
#
3776804次浏览
58121人参与
#
你已经投递多少份简历了
#
339186次浏览
4909人参与
#
提前批和秋招有什么区别
#
29428次浏览
706人参与
#
实习与准备秋招该如何平衡
#
197885次浏览
3504人参与
#
你怎么评价今年的春招?
#
12611次浏览
194人参与
#
你的秋招进展怎么样了
#
558630次浏览
13953人参与
#
现在还是0offer,延毕还是备考
#
409772次浏览
4865人参与
牛客网
牛客企业服务