如何动态分配内存?
展开全部
是两码事,首先我给你一下概念:
描述内存分配方式以及它们的区别?
1)
从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static
变量。
2)
在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集。
3)
从堆上分配,亦称动态内存分配。程序在运行的时候用malloc
或new
申请任意多少的内存,程序员自己负责在何时用free
或delete
释放内存。动态内存的生存期由程序员决定,使用非常灵活,但问题也最多。
只要你搞清楚以上这个概念,估计你也就明白你所提这个问题的答案了!
描述内存分配方式以及它们的区别?
1)
从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static
变量。
2)
在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集。
3)
从堆上分配,亦称动态内存分配。程序在运行的时候用malloc
或new
申请任意多少的内存,程序员自己负责在何时用free
或delete
释放内存。动态内存的生存期由程序员决定,使用非常灵活,但问题也最多。
只要你搞清楚以上这个概念,估计你也就明白你所提这个问题的答案了!
展开全部
是两码事,首先我给你一下概念:
描述内存分配方式以及它们的区别?
1)
从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static
变量。
2)
在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集。
3)
从堆上分配,亦称动态内存分配。程序在运行的时候用malloc
或new
申请任意多少的内存,程序员自己负责在何时用free
或delete
释放内存。动态内存的生存期由程序员决定,使用非常灵活,但问题也最多。
只要你搞清楚以上这个概念,估计你也就明白你所提这个问题的答案了。
描述内存分配方式以及它们的区别?
1)
从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static
变量。
2)
在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集。
3)
从堆上分配,亦称动态内存分配。程序在运行的时候用malloc
或new
申请任意多少的内存,程序员自己负责在何时用free
或delete
释放内存。动态内存的生存期由程序员决定,使用非常灵活,但问题也最多。
只要你搞清楚以上这个概念,估计你也就明白你所提这个问题的答案了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询