#include long *p; void a(void); void b(void); void c(void); int main(void) { long m = 10; p = &m; printf("&m = %p\n", p); a(); return 0; } void a(void) { long a = 20; printf("&a = %p\n", &a); b(); } void b(void) { long b = 30; printf("&b = %p\n", &b); c(); } void c(void) { long c = 40; printf("&c = %p\n\n", &c); printf("a = %ld\n", *(long*)(p - 4)); printf("b = %ld\n", *(long*)(p - 8)); printf("c = %ld\n", *(long*)(p - 12)); }