• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Wczytanie calego wiersza przed wczytaniem liczby

Cloud VPS
0 głosów
174 wizyt
pytanie zadane 20 listopada 2016 w C i C++ przez czujek22 Dyskutant (7,670 p.)

Witam. Mam taki problem:

Mam zadanie zrobić taki jakby katalog gdzie podajemy marke samochodu (może wystapic kilka słow) i zaraz potem rok produkcji w liczbach.

Ale jest problem ponieważ od razu przeskakuje mi do następnego zdania pomijając poprzednie pytania.

 

#include <iostream>

using namespace std;

struct car
{
    string marka;
    int rok;
};

int main()
{
    cout << "Ile samochodow chcesz skatalogowac? " ;
    int ile;
    cin>>ile;

    car * ps = new car[ile];

    for(int i=0;i<ile;i++)
    {
       cout<<"Samochod #"<<(i +1)<<endl;
       cout<<"Podaj marke samochodu: ";
       getline(cin, ps[i].marka);
       cout<<"Rok produkcji: ";
       (cin>>ps[i].rok).get();

    }

    for(int j=0;j<ile;j++)
    {
        cout<<endl<<ps[j].rok<<" "<<ps[j].marka<<endl;
    }


delete [] ps;



    return 0;
}

 

Myślalem, że ze znakami nowego wiersza już wszystko gra ale jednak gdzies jest blad

1 odpowiedź

+1 głos
odpowiedź 20 listopada 2016 przez Knayder Nałogowiec (37,640 p.)

Dodaj po użyciu każdego cina. W ten sposób czyścisz jego bufor.

cin.ignore();

 

Podobne pytania

0 głosów
1 odpowiedź 1,582 wizyt
0 głosów
2 odpowiedzi 470 wizyt

93,454 zapytań

142,449 odpowiedzi

322,718 komentarzy

62,833 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...