Pobieranie dużej ilości danych w jednej lini

Tagi: białe znaki, C++, cin, funkcje, programowanie, scanf, standardowe wejście, STL, wczytywanie danych,
Kategoria:

Niestety ja się za późno o tym dowiedziałem i m.in. przez to uzyskałem słaby wynik w II etapie OIG. Nie wiedziałem jak pobrać np. 100 zmiennych podanych w jednej lini, przez funkcje scanf jest to nieefektywne, pobranie stringa a później rozbijanie go na liczby też nie jest efektywne. Więc zacząłem szperać po necie i znalazłem takie info, że jak będę chciał pobrać przez cin pobrać "ala ma kota" to pobierane jest tylko "ala" a reszta pozostaje do późniejszego odczytania. To znaczy, że jakbym miał program:
#include #include using namespace std; main() { string _1; string _2; string _3; cin >>_1; cin >>_2; cin >>_3; return 0; }
To wpisując raz "ala ma kota" to "ala" byłaby w _1, "ma" w _2, "kota" w _3(a ja myślałem, że wszystko po pierwszym białym znaku jest kasowane). Teraz pobranie kilku wyrazów, liczb podanych w jednej lini odzdzielonych od siebie białym znakiem(np. spacja, "/t") jest dla mnie proste.

Zobacz komentarze