问题标题:
intx[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};int(*pt)[4]=x;能与数组元素x[2][3]相等的表达式是A.*(*(pt+2)+3)B.*(pt+2)+3C.*(pt+2+3)D.(*pt+2)+3答案为什么选A呢
问题描述:

intx[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};int(*pt)[4]=x;能与数组元素x[2][3]相等的表达式是A.*(*(pt+2)+3)B.*(pt+2)+3C.*(pt+2+3)D.(*pt+2)+3答案为什么选A呢

曹志彤回答:
  在这里pt是指向一个int[4]的一个数组的指针,并把它指向x的首地址,也即是pt=x;所以pt+2=pt+2*(sizeof(int[4]))=x+2是指向x[2]的首地址,所以x[2]=*(x+2)=*(pt+2),所以*(pt+2)+3=*(x+2)+3是指向x[2][3]的地址,所个*(*(pt+2)+3)=x[2][3]
查看更多
数学推荐
热门数学推荐