Can someone plz explain why is 40000 getting printed for d even though I initialized int *d ?
{
int a = 2;
int *b;
int **c;
int *d = 40000;
b = &a;
c = &b;
printf("&a = %d\n",&a);
printf("b = %d\n",b);
printf("*b = %d\n",*b);
printf("&b = %d\n",&b);
printf("*(&b) = %d\n",*(&b));
printf("c = %d\n",c);
printf("*c = %d\n",*c);
printf("**c = %d\n",**c);
printf("d = %d\n",d);
printf("d+1 = %d\n",d+1);
}