cin.sync() nie czyści bufora

cin.sync() nie czyści bufora
SW
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 26
0

cześć,
mam problem z odebraniem danych od użytkownika.
Potrzebuję wczytać dwie lub trzy zmienne, tj. jeśli pierwsza zmienna jest równa x to wczytujemy trzecią.
Problem mam z tym, że jeśli użytkownik wprowadzi np. cztery wyrazy to ładują się do bufora i nie mogę ich wyczyścić przez cin.sync()

Kopiuj
while(1){
		cout << "Wybierz polecenie: ";

		cin >> wybor;	
		if (wybor == "koniec") {return 0;};
	
		cin >> typ;
		if (wybor == "enqueue") {cin >> nazwa; };

		cout << wybor << typ << nazwa;
		cin.sync();
}
kq
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Szczecin
2

Pewnie dlatego, że od tego jest metoda ignore().

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.