本文主要是介绍栈上分配内存和堆上分配内存的区别,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.程序占用的内存可以分为以下几种情况:
栈区(stack)
堆区(heap)
全局区(static静态区)
文字常量区
程序区
2.下面对内存分配进行总结
栈区:存储函数参数,占据连续的存储空间
堆区:由程序员分配和释放,或者由系统释放,不连续分配,容易造成内存碎片
全局区:全局变量和静态变量的存储
文字常量区:常量,字符串
程序代码区,主要存储二进制文件
3.struct和class区别:
struct值类型:栈上分配内存
class引用类型:堆上分配内容
这篇关于栈上分配内存和堆上分配内存的区别的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!