- 使用数组下标访问,也是基础访问方式
多维数组的指针访问方式int a[6]={1,2,3,4,5,6}; printf("%d",a[5]); // 6 int a1[2][3]={ {1,2,3}, {4,5,6} }; printf("%d",a1[1][2]); //6我们知道数组的索引是从0开始存储的,那么我们对数组进行下标访问时的下标范围为 0-数组长度-1.
2.使用指针进行访问int a[6]={1,2,3,4,5,6}; printf("%d",*a); //1在c语言中,数组名即为数组中第一个元素的地址,即为指向第一个元素的指针,对其进行解引用即可得到第一个指向元素的值.
我们知道指针是可以进行加法运算的,代表指向的地址前进,因为数组中的数据是连续存储的,所以进行*(a+1)的访问即为a所指向的元素的下一个元素
int a[6]={1,2,3,4,5,6}; printf("%d",*(a+5)); //6可以发现采用指针访问和下标访问的数字部分是一样的,也是 0 -数组长度-1
这里以二维数组为例子
基础知识储备- 可把多维数组看作由一维数组组成的数组
- 每行的行名为该行第一个元素的地址
int a1[2][3]={
{1,2,3},
{4,5,6}
};
printf("%d",a1[1][2]); //6
printf("%d",*(*(a1+1)+2)); //6
a1为数组中第一行的地址,对a1进行移动到第二行进行解引用即为第二行第一个元素的地址,再进行移动到第三个元素即为6
欢迎大家来交流啊!



