程序的局部变量存在于(堆栈)中,全局变量存在于(静态区 )中,动态申请数据存在于( 堆)中。1.作用于变量: 用static声明局部变量-------局部变量指在代码块{}内部定义的变量,只在代码块内部有效(作用域),其缺省的存储方式是自动变量或说是动态存储的,即指令执行到变量定义处时才给变量分.....
分类:
编程语言 时间:
2015-11-10 15:46:23
阅读次数:
202
概念内存泄漏: 用动态存储分配函数动态开辟的空间,在使用完毕后未释放, 木有任何指针指向他,结果导致一直占据该内存单元。直到程序结束。(其实说白了就是该内存空间使用完毕之后未回收,占着茅坑不**)即所谓内存泄漏。等所有内存都被占完之后, 系统就跪了.内存分配方式说道内存泄露,就不得不谈到内存分配的方...
分类:
编程语言 时间:
2015-11-05 18:29:49
阅读次数:
333
内存泄漏也称作“存储渗漏”,用动态存储分配函数动态开辟的空间,在使用完毕后未释放,结果导致一直占据该内存单元。直到程序结束。(其实说白了就是该内存空间使用完毕之后未回收)即所谓内存泄漏。内存泄漏形象的比喻是“操作系统可提供给所有进程的存储空间正在被某个进程..
分类:
其他好文 时间:
2015-09-18 18:57:01
阅读次数:
138
动态存储管理:伙伴系统分配内存算法思想:当程序提出大小为n的内存分配请求时,首先在可利用表中查找大小与n相匹配的子表.
◆ 若存在2^(k-1)< n ≤ 2^k-1的空闲子表结点:则将子表中的任意一个结点分配之;
◆ 若不存在2^(k-1) < n ≤ 2^k-1的空闲子表结点:则从结点大小为2^k的子表中找到一个空闲结点,将其中一半分配给程序,剩余的一半插入到结点大小为2k-1的子表中。...
分类:
其他好文 时间:
2015-08-30 23:11:00
阅读次数:
219
内存问题:概率性崩溃malloc:动态内存分配 分配长度为num_bytes字节的内存块calloc:动态内存分配并清零功 能: 在内存的动态存储区中分配n个长度为size的连续空间,函数返回一个指向分配起始地址的指针;如果分配不成功,返回NULL。realloc动态内存调整功能先判断当前的指针是否...
分类:
其他好文 时间:
2015-08-30 12:40:42
阅读次数:
290
主要内容: 1.数组 2.指针 3.动态存储分配 4.指针与数组 5.指针与函数 6.字符串内存地址: 1.内存地址的访问方式 通过变量名访问 通过地址访问 2.& var; //表示var在内存中的起始地址void类型的指针就相当于一个hook(钩子),可以指向任何数据类型。1...
分类:
编程语言 时间:
2015-08-30 00:41:38
阅读次数:
153
链表 链表是采用动态存储分配的一种结构,可以根据需要申请内存单元。 每个结点中包括两个部分:一部分是实际数据,另一部分是下一个结点的的地址。
分类:
其他好文 时间:
2015-08-05 19:49:25
阅读次数:
91
如何自己实现一个动态存储的分配机制,当然有很多的存储的分配方法,关键在于“堆”的管理。这里我们使用“隐式链表”的方法实现对“堆”的分配。而且分配的单位是“字”,这里的字是4个字节,而且我们分配的内存都按8字节(也就是双字)对齐。上图中一个空格代表一个字(4字节)也就是我们的堆开始三个字是堆的对齐和头...
分类:
其他好文 时间:
2015-07-31 01:16:01
阅读次数:
123
1.集合的概念集合:是JavaAPI提供的一些类的实例,用于动态存储多个对象JDK所提供的集合API位于Java.util包下。2.集合框架图(都在util包下)2.1Collection下的常用方法1.添加:add(e);addAll(Collection);2.删除:remove(e);removeAll(collection);clear();3.判断:contains(e);..
分类:
编程语言 时间:
2015-07-13 01:08:34
阅读次数:
168
/*
* 12_变量的存储方式和生存期.c
*
* Created on: 2015年7月5日
* Author: zhong
*/
#include
#include
/**
* 从变量的作用域分: 全局变量,局部变量
* 从变量存在的时间(生命周期)分:静态存储方式,动态存储方式
*
* 静态存储方式:在程序运行期间由系统分配固定的存储空间的方式
*...
分类:
编程语言 时间:
2015-07-05 18:33:32
阅读次数:
114