指针数组与指向数组的指针.docVIP

  • 5
  • 0
  • 约8.47千字
  • 约 10页
  • 2015-12-23 发布于安徽
  • 举报
10.3?????? 数组指针和指向数组的指针变量 一个变量有一个地址,一个数组包含若干元素,每个数组元素都在内存中占用存储单元,它们都有相应的地址。所谓数组的指针是指数组的起始地址,数组元素的指针是数组元素的地址。 10.3.1 指向数组元素的指针 一个数组是由连续的一块内存单元组成的。数组名就是这块连续内存单元的首地址。一个数组也是由各个数组元素(下标变量)组成的。每个数组元素按其类型不同占有几个连续的内存单元。一个数组元素的首地址也是指它所占有的几个内存单元的首地址。 定义一个指向数组元素的指针变量的方法,与以前介绍的指针变量相同。 例如: int a[10]; /*定义a为包含10个整型数据的数组*/ int *p; /*定义p为指向整型变量的指针*/ 应当注意,因为数组为int型,所以指针变量也应为指向int型的指针变量。下面是对指针变量赋值: p=a[0]; 把a[0]元素的地址赋给指针变量p。也就是说,p指向a数组的第0号元素。 C语言规定,数组名代表数组的首地址,也就是第0号元素的地址。因此,下面两个语句等价:p=a[0]; p=a; 在定义指针变量时可以赋给初值: int *p=a[0]; 它等效于:int *p; p=a[0]; 当然定义时也可以写成: int *p=a; 从图中我们可以看出有以下关系: p,a,a[0]

文档评论(0)

1亿VIP精品文档

相关文档