指针与一维数组
上一节
下一节
数组元素的指针
一个变量有地址,一个数组包含若干元素,每个数组元素都在内存中占用存储单元,它们都有相应的地址。指针变量既然可以指向变量,当然也可以指向数组元素(把某一元素的地址放到一个指针变量中)。所谓数组元素的指针就是数组元素的地址。可以用一个指针变量指向一个数组元素。
int a[10]={1,3,5,7,9,11,13,15,17,19}; //定义a为包含10个整型数据的数组
int *p; //定义p为指向整型变量的指针变量
p=&a[0]; //把a[0]元素的地址赋给指针变量p
引用数组元素可以用下标法,也可以用指针法,即通过指向数组元素的指针找到所需的元素。 int a[5], *p; p=a; a[0]=3; *p=3;
注意:程序中的数组名不代表整个数组,只代表数组首元素的地址。
p=&a[0]; //p的值是a[0]的地址
p=a; //p的值是数组a首元素(即a[0])的地址
在定义指针变量时可以对它初始化:下面三种方法均可达到初始化效果。
int *p; p=&a[0]; //不应写成*p=&a[0];
int *p=&a[0];
int *p=a;

