数组指针等问题#c
#include"stdio.h" int main() { int a[4][3] = {1,2,3,4,5,6,7,8,9,10,11,12}; int (*prt)[3] = a, *p = a[0]; printf("%d\n",*(*(&a+1)-1));// 6487556 1 printf("%d\n",*(*(&prt+1)-1));//6487508 2 printf("%d\n",&prt+1);// 6487576 3 printf("%d\n",a+4);// 6487568 4 printf("%d\n",a);// 6487520 5 printf("%d\n",&a+1);// 6487568 6 printf("%d\n",prt[1][2]);// 6 7 printf("%d\n",a[1][2]);// 6 8 printf("%d\n",prt);// 6487520 9 printf("%d\n",p);// 6487520 10 printf("%d\n",&a);// 6487520 11 printf("%d\n",&prt);// 6487568 12 }注释为地址或者值,后面为行号。有大佬告诉我为啥吗
#c#