S1E24指针和二维数组
本帖最后由 Kotori 于 2017-7-29 07:44 编辑指针和二维数组
1>二维数组的定义
通过前面的学习,计算机中并没有实际意义上的二维数组。定义二维数组都是先定义一维数组,然后在一维数组的元素中线性扩展成数组,进而形成二维。
int a;
//此时a指向的是a一个包含5个元素的数组
*(a+1) == a; //指针法与下标法是等价的 注意:1)多维数组中,当前数组名都是指向第一维度中包含的数组整体的。
2)在编译中,编译器会把下标形式翻译成指针形式。
2>指针和二维数组
任意维度的数组都是线性扩展形成的,因此下列形式是完全等价的。
*(a+i) == a;
*(*(a+i)+j) == a;
*(*(*(a+i)+j)+k) == a;
页:
[1]