#include <stdio.h>
int a[][3] = {{10, 20, 30},
{40, 50, 60},
{70, 80, 90}};
int main(void)
{
int *p[] = {a[0], a[1], a[2]};
int (*q)[3] = a;
printf("sizeof(int) = %zu\n", sizeof(int)); // 4 printf("sizeof(int *) = %zu\n", sizeof(int *)); // 8 printf("sizeof(int (*)[3]) = %zu\n", sizeof(int (*)[3])); // 8 printf("sizeof a = %zu\n", sizeof a
); printf("sizeof p = %zu\n", sizeof p
); printf("sizeof q = %zu\n", sizeof q
);
printf("a[1][1] = %d\n", a
[1][1]); printf("*a[1] = %d\n", *a
[1]); printf("(*a + 1)[1] = %d\n", (*a
+ 1)[1]); printf("*(a + 1)[1] = %d\n", *(a
+ 1)[1]);
printf("p[1][1] = %d\n", p
[1][1]); printf("*p[1] = %d\n", *p
[1]); printf("(*p + 1)[1] = %d\n", (*p
+ 1)[1]); printf("*(p + 1)[1] = %d\n", *(p
+ 1)[1]);
printf("q[1][1] = %d\n", q
[1][1]); printf("*q[1] = %d\n", *q
[1]); printf("(*q + 1)[1] = %d\n", (*q
+ 1)[1]); printf("*(q + 1)[1] = %d\n", *(q
+ 1)[1]);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgogaW50IGFbXVszXSA9IHt7MTAsIDIwLCAzMH0sCiB7NDAsIDUwLCA2MH0sCiB7NzAsIDgwLCA5MH19OwoKIGludCBtYWluKHZvaWQpCiB7CiBpbnQgKnBbXSA9IHthWzBdLCBhWzFdLCBhWzJdfTsKIGludCAoKnEpWzNdID0gYTsKCiBwcmludGYoInNpemVvZihpbnQpID0gJXp1XG4iLCBzaXplb2YoaW50KSk7IC8vIDQKIHByaW50Zigic2l6ZW9mKGludCAqKSA9ICV6dVxuIiwgc2l6ZW9mKGludCAqKSk7IC8vIDgKIHByaW50Zigic2l6ZW9mKGludCAoKilbM10pID0gJXp1XG4iLCBzaXplb2YoaW50ICgqKVszXSkpOyAvLyA4CiBwcmludGYoInNpemVvZiBhID0gJXp1XG4iLCBzaXplb2YgYSk7CiBwcmludGYoInNpemVvZiBwID0gJXp1XG4iLCBzaXplb2YgcCk7CiBwcmludGYoInNpemVvZiBxID0gJXp1XG4iLCBzaXplb2YgcSk7CgogcHJpbnRmKCIqKmEgPSAlZFxuIiwgKiphKTsKIHByaW50ZigiYVsxXVsxXSA9ICVkXG4iLCBhWzFdWzFdKTsKIHByaW50ZigiKmFbMV0gPSAlZFxuIiwgKmFbMV0pOwogcHJpbnRmKCIoKmEgKyAxKVsxXSA9ICVkXG4iLCAoKmEgKyAxKVsxXSk7CiBwcmludGYoIiooYSArIDEpWzFdID0gJWRcbiIsICooYSArIDEpWzFdKTsKCiBwcmludGYoIioqcCA9ICVkXG4iLCAqKnApOwogcHJpbnRmKCJwWzFdWzFdID0gJWRcbiIsIHBbMV1bMV0pOwogcHJpbnRmKCIqcFsxXSA9ICVkXG4iLCAqcFsxXSk7CiBwcmludGYoIigqcCArIDEpWzFdID0gJWRcbiIsICgqcCArIDEpWzFdKTsKIHByaW50ZigiKihwICsgMSlbMV0gPSAlZFxuIiwgKihwICsgMSlbMV0pOwoKIHByaW50ZigiKipxID0gJWRcbiIsICoqcSk7CiBwcmludGYoInFbMV1bMV0gPSAlZFxuIiwgcVsxXVsxXSk7CiBwcmludGYoIipxWzFdID0gJWRcbiIsICpxWzFdKTsKIHByaW50ZigiKCpxICsgMSlbMV0gPSAlZFxuIiwgKCpxICsgMSlbMV0pOwogcHJpbnRmKCIqKHEgKyAxKVsxXSA9ICVkXG4iLCAqKHEgKyAxKVsxXSk7CgoKCiByZXR1cm4gMDsKIH0=