Я новичок в C++, и я пишу функцию для преобразования строки в заголовок. Я столкнулся с некоторыми проблемами.Пытается сохранить подстроку в переменной char
string title_case(string Word)
{
// Local constants
// Local variables
string Temp;
char c;
/************************** Start title_case **************************/
for(int i = 0; i < Word.length(); i++)
{
c = Word.substr(i, (i + 1));
if(i == 0)
Temp += toupper(c);
else
Temp += tolower(c);
}
return Temp;
}
Когда я пытаюсь скомпилировать я получаю эту ошибку
93 20 E: \ Documents \ School Work \ 4 - 2015 осень \ CSC 263 \ Неделя 4 \ Строка Lab.cpp [Error] не может преобразовать 'std :: basic_string' в 'char' при назначении
Любая идея о том, что я делаю неправильно?
Вы используете класс 'string' вместо строковых символов' C * style'. –
Какая часть ошибки вы не понимаете? – juanchopanza
Ошибка указана в строке 'c = Word.substr (i, (i + 1))'; вы должны использовать 'c = Word [i];' вместо этого. 'string :: substr()' возвращает другую 'string'; вы пытаетесь перетащить весь объект 'string' в переменную' char'. –