定义 int a[3][4]; 取二维数组元素数据a[i][j],为什么可以用 *(&a[0][0]+4*i+j) 和 *(a[0]+4*i+j) 定义 int a[3][4]; 取二维数组元素数据a[i][j],为什么可以用 *(&a[0][0]+4*i+j) 和 *(a[0]+4*i+j)

来源:学生作业帮助网 编辑:作业帮 时间:2024/07/02 18:16:48
定义 int a[3][4]; 取二维数组元素数据a[i][j],为什么可以用 *(&a[0][0]+4*i+j) 和 *(a[0]+4*i+j) 定义 int a[3][4]; 取二维数组元素数据a[i][j],为什么可以用 *(&a[0][0]+4*i+j) 和 *(a[0]+4*i+j)
x){n֓ y% Ʊ& O=|gS7<@uљY:OvzΎ^| - hX 6Tx:(,BOl?[i_`g3qn}0-/>b5khxcZtnmOuM{>{Ӯ:Pu$فB>

定义 int a[3][4]; 取二维数组元素数据a[i][j],为什么可以用 *(&a[0][0]+4*i+j) 和 *(a[0]+4*i+j) 定义 int a[3][4]; 取二维数组元素数据a[i][j],为什么可以用 *(&a[0][0]+4*i+j) 和 *(a[0]+4*i+j)
定义 int a[3][4]; 取二维数组元素数据a[i][j],为什么可以用 *(&a[0][0]+4*i+j) 和 *(a[0]+4*i+j)
定义 int a[3][4]; 取二维数组元素数据a[i][j],为什么可以用 *(&a[0][0]+4*i+j) 和 *(a[0]+4*i+j)

定义 int a[3][4]; 取二维数组元素数据a[i][j],为什么可以用 *(&a[0][0]+4*i+j) 和 *(a[0]+4*i+j) 定义 int a[3][4]; 取二维数组元素数据a[i][j],为什么可以用 *(&a[0][0]+4*i+j) 和 *(a[0]+4*i+j)
因为a[0]与&a[0][0]都是数组第一个元素的地址,其值与4*i+j相加,都是元素a[i][j]的地址.