Замена символов в string. "i" буква должна стать "i+1"
Могу сделать либо так,чтобы заменялась лишь одна буква,либо все буквы после выбранной.К примеру в строке qwerty выбрать r и будет qwerry(то что мне и нужно),но если слово длинное,то заменяет либо одну первую букву,либо вообще не заменяет.
string str;
cin >> str;
char b;
cin >> b;
for (int i = 0; i < str.length(); i++)
{
if (str[i] == b)
{
str[i + 1] = b;
break;
}
}
Источник: Stack Overflow на русском