数组指针

▶ 指向数组元素的指针变量的定义和赋值

int main(){
	int arr[3];
	arr[0]=0; arr[1]=1; arr[2]=2;
	
	// 定义一个指针变量 *p
	int *p1;
	p1 = &arr[0]; // 这等价于 p = arr;
	              // 数组名等于是数组的首地址
	int *p2 = arr;
}

数组名等于数组的首地址。

int *p; 

p = arr[0] 或 p = arr;

定义指针时候也可以为指针变量赋值。

int *p = arr; 或 int *p = &a[0];

▶ 通过指针引用数组元素

// 定义一个指针变量 *p
int *p1;
p1 = &arr[0];       // p1 指向了 arr[1]
printf("%d\n",*p1);
	
p1 = p1+1;          // 此时 p1 指向了 arr[2] 
printf("%d\n",*p1);

▷ 引用数组元素的方式

应用数组元素的方式有很多。

*(p+3) = 18;

将 18 赋值给了 arr[3] 。

p[i] 这种表示是 *(p+i) 这种表示

多种方式:

a[i]; p[i]; *(p+1); *(a+i);
posted @ 2024-09-29 19:51  takenika  阅读(80)  评论(0)    收藏  举报