【C语言及程序设计】二维数组、数组指针和指针数组
2021-07-20 12:08
标签:数组 语言 程序设计 地址 二维数组 一个 假设 指针 设计 二维数组可以看成一个以一维数组作元素的一维数组,因此,二维数组的储存和指针操作上很容易让人产生困惑: 假设有一二维数组 a[3][4] = { {1,2,3} , {4,5,6} , {7,8,9} } a——二维数组名,实质是 以{1,2,3} , {4,5,6} , {7,8,9}为元素的一维数组的首元素的指针,其值为 a[0]的地址(简称 行地址) a[0] ——一维数组名,实质是 以1,2,3为元素的一维数组的首元素指针,其值为 a[0][0]的地址(简称 列地址) a[0][0] ——二维数组a[3][3] 和一维数组(子数组)a[0] 的元素 由此可知, a+i=&a[i] 行地址相等 对应的指针为 数组指针 如 (*p)[4] a[i]=*(a+i)=&a[i][0] 列地址相等 对应的指针为 普通指针 *p 但a 不是指针数组 【C语言及程序设计】二维数组、数组指针和指针数组 标签:数组 语言 程序设计 地址 二维数组 一个 假设 指针 设计 原文地址:https://www.cnblogs.com/miyazakehime/p/9517853.html