Вместо S вводится пустая строка (насколько я понял)

Дан символ C и строки S, S0 . Перед каждым вхождением символа C в строку S вставить строку S0.

#include <iostream>
#include <string>

int main()
{
    char C;
    std::string S, S0;
    std::cout << "Введите C:" << std::endl;
    std::cin >> C;
    std::cout << "Введите строку S:" << std::endl;
    getline(std::cin, S);
    std::cin.ignore(1);
    std::cout << "Введите строку S0:" << std::endl;
    getline(std::cin, S0);
    std::cin.ignore(1);
    int i = 0;
    while (S.find(C, i) != -1)
    {
        i = S.find(C, i) + 1;
        S.insert(i, S0);
    }
std::cout << S;
return 0;
}

Я думаю, getline() работает немного не так, как нужно


Ответы (0 шт):