关于系统中为什么会分为栈和堆

本文探讨了编程语言中栈与堆的不同之处,包括不同语言对变量的存储方式、堆与栈的空间大小对比、特定数据结构的实现位置以及长期保存数据的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

之前在学习c++的时候对于这一个问题有很大的疑问,问老师之后并没有得到合理的解答,所以之后跑去知乎上问了一下,现在就把我得到的一些回答总结一下。

1. 并不是所有的编程语言都会吧variable放在栈上面。比方说,java会把所有的内容都放在堆上,然后会有一个gc进程不断的回收垃圾。

2. 堆的空间要远比栈要大。

3.某些数据结构只能在堆上实现,比方说链表

4.当你某一个程序结束之后还想在获得它运算求得的数据,那就把数据结果放在堆上面

暂时知道的就是这样,又有新的答案就会慢慢来补充

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值