定义 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/11/25 10:13:10
定义inta[3][4];取二维数组元素数据a[i][j],为什么可以用*(&a[0][0]+4*i+j)和*(a[0]+4*i+j)定义inta[3][4];取二维数组元素数据a[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) 定义 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]的地址.