Pointer cannot point any of memory address because operating system may be using those memory locations and if a pointer points to it, then it may crash the system. But if a pointer is not initialized, then it may point to any other memory location in the system. It is in latter steps made to point to some variable and hence it is initialized. In above all cases, pointer variables are not initialized when it is declared.