1. Pick a language for learning, C or C++.
2. "Hello" is a character constant, which has read-only memory assigned to it by the compiler.
You could imagine the code is working internally like this
The static char buffers, as well as the "..." literals are all initialized at compile time. When you say buf = STRING_LITERAL_1 or buf = "..." then the address of that memory is assigned.
static const char STRING_LITERAL_1 = "Hello";
static const char STRING_LITERAL_2 = "World!!!!!!!!";
char * buf;
buf = (char*)STRING_LITERAL_1;
buf = (char*)STRING_LITERAL_2;