在课堂上我们正在学习链表,我对动态记忆和预定记忆知之甚少。数据位于何处?性能差异是什么?内存看起来如何?
答案 0 :(得分:0)
如果你想存储10个项目,你可以用两种(或许多其他)方式中的一种来做....
答案 1 :(得分:0)
[存在过度简化和潜在系统假设的风险]
动态内存来自应用程序堆。堆由一个或多个由库管理的内存块组成。该库从操作系统分配内存页以创建堆。
从堆分配的动态数据几乎可以位于进程地址空间的任何位置..
从堆中分配数据会受到性能影响。其范围取决于分配的数据量,堆的状态,库使用的算法以及分配的频率。通常,我们会受到动态内存的影响。
(我会详细介绍但不想压倒你。)
内存看起来像系统中的任何其他读/写内存。但是,在返回应用程序的内存之前通常会放置一个隐藏的标头。通常还有一个预告片(用于检测超支)。