Use of const
keyword in pointers context:
The difference between following declarations:
A) const char* pChar // pointer to a CONSTANT char
B) char* const pChar // CONSTANT pointer to a char
C) const char* const pChar // Both
So with A:
const char* pChar = 'M';
*pChar = 'S'; // error: you can't modify value pointed by pChar
And with B:
char OneChar = 'M';
char AnotherChar = 'S';
char* const pChar = &OneChar;
pChar = &AnotherChar; // error: you can't modify address of pChar