2、根据功能可以分为 ,栈区 、堆区、静态区, 栈区一般指的一个函数局部变量,在编译原理中这叫做一个栈帧。 堆区一般是为了用户自由分配的,一般C语言中用MALLOC函数分配,C++中用NEW运算符来分配,它是有 *** 作系统的堆管理器来管理的,拿windows来说,在一个程序运行后,一般至少有两个默认的堆,一个是new堆,一个进程 自己的堆, 静态区,这个一般是全局变量或者static变量使用的区域,这个区域,如果你对PE结构熟悉,就会明白这实际上是pe 区段中的.data区段,当程序运行后变成进程,这个区段是直接内存文件映射过去的。
可能是如下情况:你的程序严重错误,不断的malloc或new内存却没有free或delete.或者是你内存小到可怜。
所以,建议你换用版本较好的编译器,如Turboc for windows或VC。
同时重启以此计算机,内存是RAM,重启自然会恢复。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)