#include <stdio.h>
#include <string.h>
main()
{
int a[][3] = {1,2,3,4,5,6,7,8,9};
printf("%d\n",a[1]+2);
printf("%d\n",&a[1][2]);
}
结果
6487556
6487556
#include <stdio.h>
#include <string.h>
main()
{
int a[][3] = {1,2,3,4,5,6,7,8,9,10,11,12};
int (*p)[3] =a;
p = a;
printf("%d\n",*(p+1)+2);
printf("%d\n",&a[1][2]);
printf("%d\n",*(*(p+1)+2));//元素a[1][2]=6
printf("%d\n",*(p[1]+2));//元素a[1][2]=6
printf("%d\n",(*(p+1))[2]);//元素a[1][2]=6
printf("%d\n",p[1][2]);//元素a[1][2]=6
printf("%d\n",*(p+1)[2]);//元素a[3][0]=10
}
结果
6487540
6487540
6
6
6
6
10
#include <stdio.h>
#include <string.h>
main()
{
int a[][3] = {0,2,3,4,5,6,7,8,9,10,11,12};
int *p = a[0];
printf("%d\n",*p);
printf("%d\n",*(p+1));
printf("%d\n",*(p+3));
printf("%d\n",*(p+6));
printf("%d\n",*(p+11));
}
结果
0
2
4
7
12