动态内存分配小结
2015-12-18 19:08
169 查看
动态内存分配中的free()是释放的意思
释放是修改了申请的内存的使用状态,从可用变成不可用,里面的数据还在,但是使用权已经交还给系统
int *p = malloc(sizeof(int) * 10);
free(p);
free(p);
当我们对同一块内存进行多次释放的时候,会造成系统的崩溃,这种情况是过度释放造成的.
malloc申请内存之后,内存使用完,就free,这两个是成对出现的
当对一段内存free之后,根据地址还可以访问这段内存,但是内存的所属权已经不在我们手里,会出现崩溃的可能,这种情况称为野指针
野指针,过度释放和内存泄漏是常见的三种内存问题.编程时要多注意.
释放是修改了申请的内存的使用状态,从可用变成不可用,里面的数据还在,但是使用权已经交还给系统
int *p = malloc(sizeof(int) * 10);
free(p);
free(p);
当我们对同一块内存进行多次释放的时候,会造成系统的崩溃,这种情况是过度释放造成的.
malloc申请内存之后,内存使用完,就free,这两个是成对出现的
当对一段内存free之后,根据地址还可以访问这段内存,但是内存的所属权已经不在我们手里,会出现崩溃的可能,这种情况称为野指针
野指针,过度释放和内存泄漏是常见的三种内存问题.编程时要多注意.
相关文章推荐
- 键盘输入同步
- 文章标题
- Android:LinearLayout布局中Layout_weight的深刻理解
- c++读取文件内容并保存到二维数组
- AndroidClipSquare安卓实现方形头像裁剪
- Objective-c语言_观察者模式
- HDU 2448 Mining Station on the Sea 最短路+KM
- LeetCode Merge Two Sorted Lists
- 用OC语言实现贪吃蛇小游戏
- [BZOJ1096] [ZJOI2007]仓库建设
- 【jQuery】使用ajax()方法加载服务器数据
- 【工作日志】0004工作日志
- poj 3228 Gold Transportation 二分+网络流
- 第三方支付架构设计之―帐户体系
- 关于图像对比度【4】——对比度调整强度
- adb 和 fastboot 的基本用法详解
- android edittext 点击两次才弹出输入法的解决方法之一
- 总结❤
- 利用java UDP协议,实现简单的双人聊天
- HDU-1075-What Are You Talking About(字典树&map)