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

C++ - Wczytywanie nieokreślonej liiczby danych

VPS Starter Arubacloud
0 głosów
1,264 wizyt
pytanie zadane 4 maja 2016 w C i C++ przez ignacjusz Bywalec (2,390 p.)

Witam, jak w języku C++ zaimplementować wczytywanie nieokreślonej liczby danych? Czy da się to zrobić na podstawowej bibliotece  <iostream> ? Próbowałem tak:

//...
char c;
while((cin>>c)&&(c!=13)) //Wczytywanie do enter
{
//...
}

ale nie działa. Nawet po wciśnięciu enter program dalej bierze dane.

3 odpowiedzi

0 głosów
odpowiedź 4 maja 2016 przez Łukasz Wasilewski Mądrala (5,190 p.)
wybrane 6 maja 2016 przez ignacjusz
 
Najlepsza
cin musisz przerwać enterem, jeśli wpiszesz np: 4 5 6 7 8 .. to cin zapamięta tylko 4, ale pętla się nie wykona, bo nadal będziesz mógł wpisywać.

Musisz użyć cin.get() jak kolega niżej wspomniał w komentarzu, albo ustalić jakąś wartość cina, która przerywa pętle.
1
komentarz 6 maja 2016 przez ignacjusz Bywalec (2,390 p.)

Teraz działa :)

char c;
    while(c=cin.get()!=10)
    {
        //...
    }

 

+1 głos
odpowiedź 4 maja 2016 przez Patrycjerz Mędrzec (192,340 p.)

Zauważ, że operator >> nie zwraca do zmiennej znaku nowej linii \n. Robi to już metoda get.

0 głosów
odpowiedź 4 maja 2016 przez Tomekku Bywalec (2,830 p.)
Jeśli się nie myle to enter ma kod 10
komentarz 4 maja 2016 przez ignacjusz Bywalec (2,390 p.)
Według Wikipedii kod 13 to Carriage return. Mogę spróbować z tą 10.
komentarz 4 maja 2016 przez ignacjusz Bywalec (2,390 p.)
I tak nie działa :(
komentarz 4 maja 2016 przez Tomekku Bywalec (2,830 p.)
A zrób z tego do{....}while i wrzuć do ciała while cin'a i warunek niech będzie tylko c != 10
komentarz 4 maja 2016 przez ignacjusz Bywalec (2,390 p.)
Wyjdzie to samo, tylko dłuższy zapis. Pobieranie danych w nawiasach za wpisem normalnie działa
komentarz 4 maja 2016 przez Tomekku Bywalec (2,830 p.)
To może spróbuj z Cin.get() c = cin.get();

Podobne pytania

0 głosów
1 odpowiedź 261 wizyt
pytanie zadane 30 października 2022 w C i C++ przez DonPatricio Nowicjusz (150 p.)
0 głosów
1 odpowiedź 226 wizyt
pytanie zadane 1 czerwca 2016 w C i C++ przez 0xf Dyskutant (8,180 p.)
0 głosów
1 odpowiedź 768 wizyt
pytanie zadane 23 marca 2020 w C i C++ przez lukasz07it Początkujący (290 p.)

92,454 zapytań

141,262 odpowiedzi

319,088 komentarzy

61,854 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.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...