Wyciąganie godziny z napisu

0

Witam, mam zrobione dwie funkcje(godzina_pierwsza(string napis)i godzina_druga(string napis)które zwracają mi godziny z podanego tekstu, następnie wczytuje je i zapisuje do struktury w mniej więcej takiej pętli

int ile;
cin>>ile;
        for(int j=0;j<ile; j++){
            string tekst;
            cin.ignore();
            getline(cin, tekst);
            plan[j].g_1=godzina_pierwsza(tekst);
            plan[j].g_2=godzina_druga(tekst);
        }

Pierwsze dwie godziny zapisuje mi prawidłowo, jednak dla kolejnych ucina pierwszą cyfrę pierwszej godziny, np dla:
10:00-12:00 jakis tekst
12:00-10:30 jakiś tekstasasdasd
otrzymuje:
10 12
2 10,5
zamiast:
10 12
12 10,5

Wydaje mi się że problem jest w tej pętli tylko nie mam pojęcia jaki, może przez enter który naciskam przed wpisaniem kolejnej liczby i getline zlicza mi go już jako początek drugiej linii...może tak być? jak to naprawić?

0
cin.ignore(256, '\n');

tylko raz, poza pętlą, bo getline() sam usuwa enter

0

Nic nie zmieniło

0

Pomogło, dzięki!

1 użytkowników online, w tym zalogowanych: 0, gości: 1