数据结构复习-动态内存分配
动态内存分配 malloc函数的使用 malloc是memory(内存)+allocation(分配)的合成词 malloc系统函数的功能:动态内存分配 内存分配机制分为两种: 静态内存分配:程序运行是,由OS自动分配内存空间函数结束时,由os自动收回。 动态内存分配:程序运行是,由程序员调用fre
动态内存分配 malloc函数的使用 malloc是memory(内存)+allocation(分配)的合成词 malloc系统函数的功能:动态内存分配 内存分配机制分为两种: 静态内存分配:程序运行是,由OS自动分配内存空间函数结束时,由os自动收回。 动态内存分配:程序运行是,由程序员调用fre
结构体 结构体类型的定义 结构体变量的定义 结构体的嵌套 取结构体里的成员变量 举例说明:学生成绩管理系统中,数据元素学生有很多的数据项,也称属性(如:学号,姓名,成绩等),单独用某一种基本数据类型都无法完整定义它于是我们只能使用结构体类型(他是多种基本类型的组合,即:一种自定义的符合数据类型) 结
指针与数组的关系 数组名是一个指针常量,其值一旦定义,就不可更改!!!他存放的是数组第一个元素的地址(即:入口地址) 例: int a[5]; &a[0] → </
指针变量作为函数的参数 例如:输入a,b两个整数,输出a,b是按照大到小的顺序输出 int main(void) { int a,b; int *p,*p2; scanf("%d%d",&a,&b);//输入:3 6 //初始化指针变量 p1 = &a;
指针变量的定义,初始化及引用 定义指针变量 int i,j;//定义整型变量i和j:存放整数 int *point1,*point2;//定义整形指针point1和point2存放整型变量地址 怎么理解这行代码?(*修饰的是谁?它前面的int还是后面的ponit1? point1表示:变量名 *表示
地址与指针 地址 内存中有存储单元的唯一编号(用二进制编码,十六进制表示) 例如: int i,j,k; scanf("%d%d%d",&i,&j,&k); ⬇ ⬇ ⬇ 3 6 9 printf("%d%d%d",&i,&j,&k); 其中: 地址 内存
存储器的一些概念 存储元 存储单元 存储地址 存储容量 存储元 保存一个二进制位数(即:1个0或者一个1)的触发器,称为存储元 单位bit(比特位),是存储器中最小单位。eg:0/1bit 存储单元 若干个连续存储元构成一个存储单元一般情况下,我们市面上的内存条都是:一个存储单元内含8个连续存储元(