#include #include #include int A; void foo(int *param_a) { int *local_p; local_p = (int *)malloc(sizeof(int)); printf("address of local variable from main(): %p\n", param_a); printf("address of the first parameter in foo(): %p\n", ¶m_a); printf("address of local variable in foo(): %p\n", &local_p); printf("address of variable on the heap: %p\n",local_p); printf("address of global variable: %p\n",&A); free(local_p); return; } int main(int argc, char **argv) { int main_a; foo(&main_a); return(0); }