什么叫堆栈

发布于 2020-04-29 07:20:00      浏览 302

什么叫堆栈

详情:

1、 堆和栈是两个不同的概念。堆(heap)上分配的内存,系统不释放,而且是动态分配的。栈(stack)上分配的内存系统会自动释放,它是静态分配的。运行时栈叫堆栈。栈的分配是从内存的高地址向低地址分配的,而堆则相反。由malloc或new分配的内存都是从heap上分配的内存,从heap上分配的内存必须有程序员自己释放,用free来释放,否则这块内存会一直被占用而得不到释放,就出现了“内存泄露(MemoryLeak)”。这样会造成系统的可分配内存的越来越少,导致系统崩溃。堆栈是一种执行“后进先出”算法的数据结构。设想有一个直径不大、一端开口一端封闭的竹筒。有若干个写有编号的小球,小球的直径比竹筒的直径略小。现在把不同编号的小球放到竹筒里面,可以发现一种规律:先放进去的小球只能后拿出来,反之,后放进去的小球能够先拿出来。所以“先进后出”就是这种结构的特点。堆栈就是这样一种数据结构。它是在内存中开辟一个存储区域,数据一个一个顺序地存入(也就是“压入——push”)这个区域之中。有一个地址指针总指向最后一个压入堆栈的数据所在的数据单元,存放这个地址指针的寄存器就叫做堆栈指示器。开始放入数据的单元叫做“栈底”。数据一个一个地存入,这个过程叫做“压栈”。在压栈的过程中,每有一个数据压入堆栈,就放在和前一个单元相连的后面一个单元中,堆栈指示器中的地址自动加1。读取这些数据时,按照堆栈指示器中的地址读取数据,堆栈指示器中的地址数自动减1。这个过程叫做“弹出pop”。如此就实现了后进先出的原则。而堆栈寄存器就是存放堆栈的寄存器。 垍

上一篇:线切割编程现在都用什么软件 下一篇:河南航空公司排名

相关推荐

  • 单反相机的测光是什么
    单反相机的测光是什么 数码相机的测光一般是测定被摄对像反射回来的光亮度程度,使相机在后续曝光配置参数时能够根据测光数据进行自动调节。

    相机 发布于 2022-07-08 21:03:49 浏览 689

  • 计算发动机功率的公式是什么
    计算发动机功率的公式是什么 P=n*M/9550(主要用于测试) n:转速rpm M:扭矩N.m 或者 P=(nVp)/30t(主要用于理论计算) n:转速rpm V:排量L p:缸内平均压力MPa t:发动机冲程,4冲……

    学习 发布于 2022-06-16 20:16:10 浏览 587

  • 魔兽世界血精灵玩什么职业好
    魔兽世界血精灵玩什么职业好 新手,第一选择圣骑士。外型,血精灵。可能你觉得加血很累,但是打DPS也很累,我想你总不会想去当MT的```血精灵可选职业有,圣骑士、术士、……

    其他 发布于 2022-06-16 09:15:02 浏览 509

  • 抖音视频播放量低什么原因
    抖音视频播放量低什么原因 1.账号搬运内容过多,被限流。 2.账号垃圾广告多,降低账号权重。 3.内容质量差。 4.内容违规(发布一些不良信息)。 5.发布领域不垂直。……

    其他 发布于 2022-06-15 21:16:27 浏览 465

  • 手机拍照背景图用什么软件p
    手机拍照背景图用什么软件p 手机拍照背景图可以用Snapseed软件p。Snapseed是一款专业的修图软件,用户可以使用Snapseed编辑出自己想要的照片,超强大的滤镜任意……

    手机 发布于 2022-06-15 20:13:31 浏览 588

  • 抖音为什么不能发布作品了
    抖音为什么不能发布作品了 1.查看是否是用户自己的网络出现了问题,当网络不太好的时候可能无法发送视频的,建议尝试更换网络。 2.可能查看是否是自己的抖音卡……

    其他 发布于 2022-06-15 19:48:33 浏览 587

  • 计算机软硬件基础知识都有什么具体的内容
    计算机软硬件基础知识都有什么具体的内容 1)了解电脑的基本组成。释义:电脑的主体,在主机箱中有:主板、CPU、内存、电源、显卡、声卡、网卡、硬盘、软驱、光驱等硬件。2)了解电……

    其他 发布于 2022-06-15 19:45:41 浏览 466

  • 滴滴出行特惠快车是什么意思
    滴滴出行特惠快车是什么意思 以滴滴6.0.10版本为例,滴滴特惠快车是滴滴出行开始试运营特惠拼车,针对超过 10 公里以上的线路拼车提供额外折扣。特惠拼车的入口……

    其他 发布于 2022-06-15 18:51:31 浏览 605

  • 抖音只有100多播放量什么原因
    抖音只有100多播放量什么原因 抖音只有100多播放量是因为在抖音上的推荐力度不够,抖音播放量少,视频曝光少导致的。

    其他 发布于 2022-06-15 17:09:34 浏览 547

  • 显示屏75hz和144hz有什么区别
    显示屏75hz和144hz有什么区别 显示屏75hz和144hz的区别是144Hz刷新率提高了显示器的刷新速度,从每秒75次提高至144次,意味着以前只能每秒显示75幅画面,现在可以达……

    其他 发布于 2022-06-15 12:06:05 浏览 316