invalid conversion from 'char' to 'const char'

Everything in memory has an address. Arrays are in consecutive memory addresses. A pointer is a variable that contains an address. The pointer can be used to fetch the data at the address.

Rather than copy ann array of characters or a character string we usually pass around a pointer to the first character:

char *myString = "hello";

You can reference a pointer with the '*' operator OR you can use an array index as if it pointed to an array:

char firstChar = *myString;
OR
char firstChar = myString[0];

You can do addition and subtraction on pointers:

char secondChar = *(myString+1);

They are very handy. You should learn about them.