程序存在三种内存方式:静态内存、栈内存、堆内存
静态内存:
在编译时期,知道所有变量的存储要求
全局变量,static变量
栈内存:
在运行时期,已知数据大小。
在执行函数时,函数内局部变量,函数执行结束时这些存储单元自动被释放。
堆内存:
在运行时期,无法确定数据大小。
malloc new关键字申请的内存比如可变长度串和对象实例.
动态内存,用free或delete释放内存
堆由大片的可利用块或空闲块组成,堆中的内存可以按照任意顺序分配和释放.
程序存在三种内存方式:静态内存、栈内存、堆内存
静态内存:
在编译时期,知道所有变量的存储要求
全局变量,static变量
栈内存:
在运行时期,已知数据大小。
在执行函数时,函数内局部变量,函数执行结束时这些存储单元自动被释放。
堆内存:
在运行时期,无法确定数据大小。
malloc new关键字申请的内存比如可变长度串和对象实例.
动态内存,用free或delete释放内存
堆由大片的可利用块或空闲块组成,堆中的内存可以按照任意顺序分配和释放.