#include <stdio.h>
int main(void)
{
int a[3][4] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
int i, j;
int *b[3] = {a[0], a[1], a[2]};//定義一個指針數組,裡面從放二維數組的3個首位址三個首位址即使
int (*p)[4] = a;
// int *q = a[0];
// int *q = &a[0][0];
// int *q = *a;
int *q = (int *)a;
int **k = &q;
int **n = b;
printf(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>1\n");
for(i=0; i<sizeof(a)/sizeof(a[0]); i++)
{
for(j=0; j<sizeof(a[0])/sizeof(a[0][0]); j++)
{
printf("%d ", a[i][j]);//下标法取數組元素的值。
}
}
printf("\n");
printf(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>2\n");
for(i=0; i<sizeof(a)/sizeof(a[0][0]); i++)
{
printf("%d ", *(*a+i));
}
printf("\n");
printf(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>3\n");
for(i=0; i<sizeof(a)/sizeof(a[0][0]); i++)
{
printf("%d ", *(a[0]+i));
}
printf("\n");
printf(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>4\n");
for(i=0; i<sizeof(a)/sizeof(a[0][0]); i++)
{
printf("%d ", *(&a[0][0]+i));
}
printf("\n");
printf(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>5\n");
for(i=0; i<sizeof(a)/sizeof(a[0][0]); i++)
{
printf("%d ", *((int *)a+i));
}
printf("\n");
printf(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>6\n");
for(i=0; i<sizeof(a)/sizeof(a[0]); i++)
{
for(j=0; j<sizeof(a[0])/sizeof(a[0][0]); j++)
{
printf("%d ", *(b[i]+j));
}
}
printf("\n");
printf(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>7\n");
for(i=0; i<sizeof(a)/sizeof(a[0][0]); i++)
{
printf("%d ", *(*p+i));
}
printf("\n");
printf(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>8\n");
for(i=0; i<sizeof(a)/sizeof(a[0]); i++)
{
for(j=0; j<sizeof(a[0])/sizeof(a[0][0]); j++)
{
printf("%d ", *(*p+j));
}
p++;
}
printf("\n");
p = a;
printf(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>9\n");
for(i=0; i<sizeof(a)/sizeof(a[0][0]); i++)
{
printf("%d ", *((int *)p+i));
}
printf("\n");
printf(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>10\n");
for(i=0; i<sizeof(a)/sizeof(a[0][0]); i++)
{
printf("%d ", *(q+i));
}
printf("\n");
printf(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>11\n");
for(i=0; i<sizeof(a)/sizeof(a[0][0]); i++)
{
printf("%d ", *(*k+i));
}
printf("\n");
printf(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>12\n");
for(i=0; i<sizeof(a)/sizeof(a[0]); i++)
{
for(j=0; j<sizeof(a[0])/sizeof(a[0][0]); j++)
{
printf("%d ", *(*n+j));
}
n++;
}
printf("\n");
return 0;
以上代碼是華清遠見牛立兵老師操作