4.数组及地址
数组元素要占用连续的内存单元。数组类
型不同,每个数组元素占用的内存单元数也不
同。数组占用的总单元数=数组长度×每个数
组元素占用的内存单元数。
数组元素 a[i]的地址=数组首地址+i×数组
元素的数据类型所占用的内存单元数
例:int a[3]={1,2,3};
三、指针变量
1.什么是指针变量
定义:存放内存地址的变量称为“指针变量”。
2.指针变量的定义和初始化
指针变量在使用前必须定义,定义的同时可以
赋初值。
【格式】存储类型 数据类型 *指针变量名
1[=初值 1],…;
【功能】定义指向指定“数据类型”或数组的
若干个指针变量,同时给这些变量赋初值。
例:int a;int *p=&a;float f1,f[10],
*p1=&f1,*p2=f;
3.指针变量的引用方式
(1)给指针变量赋值
【格式】指针变量=地址表达式
例: int i,*p;p=&i;
(2)直接引用指针变量名
例:int i,j,*p=&i,*q;q=p;scanf(“%d,
%d”,q,&j);
(3)通过指针变量来引用它所指向的变量
【格式】*指针变量名
注意:这种引用方式要求指针变量必须有值。
例如:int i=1,j=2,k,*p=&i;k=*p+j;
四、取地址运算符及指针运算符
取地址运算符(&):取运算对象的地址。如&a
指针运算符(*):取所指向的变量或数组元素。
例如:int *p,a;p=&a;则*p= =a 为真。