error: invalid conversion from 'const char*' to 'char' global variable
is caused by trying to assign a string to a single char. Besides this you invoke undefined behavior before you get to this.
extern char Title[10]; // array of 10 char, indexed as 0, 1, ..., 9
This is declaration, OK.
char Title[10] = "Asia";
This is initialization, OK.
Title[10] = "Europe"; // 10 means accessing array out of bound
Access array out of bounds. This is undefined behavior.
C++ Standard n3337 § 5.2.1/1
A postfix expression followed by an expression in square brackets is a
postfix expression. One of the expres- sions shall have the type
“pointer to T” and the other shall have unscoped enumeration or
integral type. The result is an lvalue of type “T.” The type “T” shall
be a completely-defined object type.62 The expression E1[E2] is
identical (by definition) to *((E1)+(E2)) [ Note: see 5.3 and 5.7 for
details of * and + and 8.3.4 for details of arrays. — end note ]
Then, § 5.7/5 explains what ptr + i
points to:
(...)If both the pointer operand and the result point to elements of
the same array object, or one past the last element of the array
object, the evaluation shall not produce an overflow; otherwise, the
behavior is undefined.