int a[2][3]={1,2,3,4,5,6},*p;
int m,s;
p=&a[0][0];
m=(*p)*(*(p+2))*(*(p+4));
s=p[1]+p[3]+p[5];
//m= s=

如何解读二维数组的指针?
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 快乐鹦鹉 2022-09-07 21:34关注
p指向二维数组首地址,因为二维数组的存储空间是连续的,所以实际int a[2][3]和int b[6]是一样的存储空间
m=( * p) * ( * (p+2)) * ( * (p+4)) = 1 * 3 * 5 = 15
s=p[1]+p[3]+p[5] 这个和上面的m表达式差不多 = 2 + 4 + 6 = 12本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用