#include <stdio.h>
main()
{
int a[3][3],*p,i;
p=&a[0][0];
for(i=0;i<9;i++)
*(p+i)=i+1;
printf("%d \n",a[1][2]);
}
其中p=&a[0][0]; 就是取
二维数组的首地址(二维数组占用的内存空间是线性的)
for(i=0;i<9;i++) *(p+i)=i+1; 就是给这个二维数组赋值,也就是
a[0][0]=0+1,a[0][1]=1+1,a[0][2]=2+1,a[1][0]=3+1,a[1][1]=4+1,a[1][2]=5+1。。。。。。
所以答案是6
本回答被提问者和网友采纳