学习记录-C和指针-第十一章 动态内存分配
2015-10-23 22:20
260 查看
C语言内存分配方式有三种:
1:静态分配
2:在栈上创建
3:在堆上分配,也说做(动态非配)。。。(也就是这章所讲的)
这一章仅仅说了其中的一种。内存分配方式有三种,三种,三种。
内存基本构成:
可编程内存基本分为这样几大部分:静态存储区、堆区、栈区。他们的功能不同,对他们使用方式也就不同。
静态存储区:内存在程序编译的时候就已经分配好了,这块内存在整个程序运行期间都存在。它主要存放静态数据、全局数据和常量(包括字符串常量)。
栈区:在执行函数时,函数内部的局部变量的存储单元都可以在栈上创建,函数执行结束时自动被释放。#####栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的容量有限。有操作系统控制。
堆区:亦称动态内存分配。程序在运行的时候用mallo或new申请任意大小的内存,程序员自己负责适当的时候用free或者delete释放内存。动态生存期可以由我们决定,如果我们不释放内存,程序将在最后才释放掉动态内存。
#内存泄漏是指程序运行中的。。。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~**这一章的安排:**
首先说明,为什么会需要 动态分配的这种内存分配方式
然后,介绍几个关于内存分配的 函数
接着,介绍使用了 动态内存分配的程序,经常会出现的程序错误
最后给了一个例子,介绍了内存是如何分配的。
1:静态分配
2:在栈上创建
3:在堆上分配,也说做(动态非配)。。。(也就是这章所讲的)
这一章仅仅说了其中的一种。内存分配方式有三种,三种,三种。
内存基本构成:
可编程内存基本分为这样几大部分:静态存储区、堆区、栈区。他们的功能不同,对他们使用方式也就不同。
静态存储区:内存在程序编译的时候就已经分配好了,这块内存在整个程序运行期间都存在。它主要存放静态数据、全局数据和常量(包括字符串常量)。
栈区:在执行函数时,函数内部的局部变量的存储单元都可以在栈上创建,函数执行结束时自动被释放。#####栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的容量有限。有操作系统控制。
堆区:亦称动态内存分配。程序在运行的时候用mallo或new申请任意大小的内存,程序员自己负责适当的时候用free或者delete释放内存。动态生存期可以由我们决定,如果我们不释放内存,程序将在最后才释放掉动态内存。
#内存泄漏是指程序运行中的。。。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~**这一章的安排:**
首先说明,为什么会需要 动态分配的这种内存分配方式
然后,介绍几个关于内存分配的 函数
接着,介绍使用了 动态内存分配的程序,经常会出现的程序错误
最后给了一个例子,介绍了内存是如何分配的。
相关文章推荐
- Lua和C语言的交互详解
- 关于C语言中参数的传值问题
- 简要对比C语言中三个用于退出进程的函数
- 深入C++中API的问题详解
- 基于C语言string函数的详解
- C语言中fchdir()函数和rewinddir()函数的使用详解
- C语言内存对齐实例详解
- 使用C语言判断英文字符大小写的方法
- c语言实现的带通配符匹配算法
- C语言实现顺序表基本操作汇总
- C语言中计算正弦的相关函数总结
- 使用C语言详解霍夫曼树数据结构
- 探讨C语言的那些小秘密之断言
- C语言实现BMP转换JPG的方法
- 深入探讨C语言中局部变量与全局变量在内存中的存放位置
- C语言查找数组里数字重复次数的方法
- C语言泛型编程实例教程
- C语言中使用lex统计文本文件字符数
- 在C语言中转换时间的基本方法介绍
- C语言进制转换代码分享