I'm completely new to C++ and I created this function:
bool guessWord(string compWord)
{
cout << "Guess a letter: ";
string userLetter;
cin >> userLetter;
for (unsigned int x = 0; x < compWord.length(); x++)
{
string compLetter = compWord[x];
if (compLetter == userLetter)
{
return true;
}
}
return false;
}
But it returns to following error: invalid conversion from 'char' to 'const char*' [-fpermissive]
. Can anyone help me understand what this means?
string compLetter = compWord[x];
compWord[x]
gets char
and you are trying to assign it to string
, that's wrong.
However, your code should be something like
bool guessWord(string compWord)
{
cout << "Guess a letter: ";
char userLetter;
cin >> userLetter;
for (unsigned int x = 0; x < compWord.length(); x++)
{
char compLetter = compWord[x];
if (compLetter == userLetter)
{
return true;
}
}
return false;
}
string compLetter = compWord[x];
should be
char compLetter = compWord[x];
On this line
string compLetter = compWord[x];
You're assigning a char to a string. Changing it to
char compLetter = compWord[x];
Should do the trick.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With