C 二维数组表示形式 代码如下: #include<stdio.h> #include<stdlib.h> int main() { int a[3][3] = {0}; int i, j; int (*p)[3]; int cnt = 1; for (i = 0; i < 3; i ++) { for (j = 0; j < 3; j ++) { a[i][j] = cnt; cnt ++; } } p = a; printf("a[2][2]: %d\n", a[2][2]); printf("*(a[2] + 2): %d\n", *(a[2] + 2)); printf("*(*(a + 2) + 2): %d\n", *(*(a + 2) + 2)); printf("*(a[0] + 2*3 + 2): %d\n", *(a[0] + 2*3 + 2)); printf("*(*a + 2*3 + 2): %d\n", *(*a + 2*3 + 2)); printf("\n"); printf("p[2][2]: %d\n", p[2][2]); printf("*(p[2] + 2): %d\n", *(p[2] + 2)); printf("*(*(p + 2) + 2): %d\n", *(*(p + 2) + 2)); printf("*(p[0] + 2*3 + 2): %d\n", *(p[0] + 2*3 + 2)); printf("*(*p + 2*3 + 2): %d\n", *(*p + 2*3 + 2)); return 0; }