int a[3][4]
提示:二维数组也是按照像一维数组那样的存储.
注意:如何证明:通过指针来进行访问每一个元素*(*a+1)
1.*a 表示将一个行地址变成该行的首地址(即一个具体元素的地址))
2.&a[0][1]表示讲一个具体的元素地址 提升为该行的行地址(*与&转换关系相反)
1 #include<stdio.h> 2 #include<windows.h> 3 int main() 4 { 5 int a[3][4]; 6 int i, j; 7 for (i = 0; i < 3; i++) 8 { 9 for (j = 0; j < 4; j++) 10 { 11 a[i][j] = i * 4 + j; 12 } 13 } 14 for (i = 0; i < 12; i++) 15 { 16 printf("a[%d]=%d\n", i,*(*a+i)); 17 } 18 19 system("pause"); 20 return 0; 21 22 }
原文:https://www.cnblogs.com/reaishenghuo/p/14353989.html