Should it be const char * languages[4]?
No, the compiler figures it out for you.
And instead of hard-coding a 4 later, you can declare an array maximum like this:
const size_t MAX_LANG = sizeof(languages) / sizeof(languages[0]);
Then use that constant in your if test:
if (langCycle == MAX_LANG) {
If you ever change the languages array, you don't have to change all the places you used a 4. The constant and the array dimensions will automatically be adjusted to match the number of language strings you put between the {} braces.