#include <stdio.h>
int f(void *p, void *q, const char *label) {
printf("%p %p %2d %s\n", p, q, (q - p), label);
}
int main() {
int a[3][2] = { {10,20}, {30,40}, {50,60} };
printf("sizeof (int) = %d\n", sizeof (int));
printf("sizeof &a = %d\n", sizeof &a);
printf("sizeof a = %d\n", sizeof a);
printf("sizeof *a = %d\n", sizeof *a);
printf("sizeof a[0] = %d\n", sizeof a[0]);
f(&a, &a + 1, "&a, &a + 1");
f(&a, (&a) + 1, "&a, (&a) + 1");
f(a, a + 1, "a, a + 1");
f(*a, *a + 1, "*a, *a + 1");
f(*a, (*a) + 1, "*a, (*a) + 1");
f(a[0], a[0] + 1, "a[0], a[0] + 1");
return 0;
}