#include #include int main () { int * p1; /* pointer declaration */ int * p2; /* pointer declaration */ int i1 = 10; int i2 = 100; printf("Step 1 : i1 = %d \t i2 = %d\n",i1,i2); p1 = &i1; *p1 = 5; printf("Step 2 : i1 = %d \t i2 = %d\n",i1,i2); p2 = p1; *p2 = 50; printf("Step 3 : i1 = %d \t i2 = %d\n",i1,i2); p2 = &i2; *p2 = *p1; printf("Step 4 : i1 = %d \t i2 = %d\n",i1,i2); p1 = NULL; /* p1 is now a NULL poitner */ // *p1 = 75; What would this do? }