Well see the above code
int a = 10; int* p1 = &a; int* p2 = p1; // Copies the address right?
But what happens here?
char* str1 = "Hello"; char* str2 = str1; // What happens here
I tried this code and when I modified str1, str2 remain unchanged why?
One more thing, if I initialize something else to str1 i.e.
char* str1 = "Hello"; str1 = "Hell";
What happens here? Is the "Hello" string deleted and space for new string is accommodated?