[C++] Wczytywanie std::string przy pomocy std::cin
Ostatnio zmodyfikowano 2013-07-15 16:50
ciekawski Temat założony przez niniejszego użytkownika |
[C++] Wczytywanie std::string przy pomocy std::cin » 2013-07-15 14:15:37 Witam, chciałbym się dowiedzieć dlaczego w przypadku kodu: string Napis = "ala ma kota"; cout << Napis; w konsoli zostanie wyświetlone "ala ma kota" w przypadku zaś: string Napis; cin >> Napis; cout << Napis; gdy wprowadzę do programu "ala ma kota" konsola zwróci mi samo "ala" ? wiem, że w przypadku gdy deklaruję kilka zmiennych int z, x, c; cin >> z, x, c; mogę wpisać w jednej linijce 3 43 28 i od razu te wartości zostaną przypisane trzem zmiennym. Dlaczego jednak w przypadku jednej zmiennej tekst jest rozbijany? |
|
m4tx |
» 2013-07-15 14:25:22 Dane pobierane za pomocą cin wczytywane są do napotkania białego znaku (spacja, enter, etc.). Dlatego właśnie otrzymujesz tylko 1 słowo. Jeśli chcesz pobrać całą linijkę, użyj getline. |
|
pekfos |
» 2013-07-15 14:27:15 To nie jest poprawny zapis. |
|
ciekawski Temat założony przez niniejszego użytkownika |
» 2013-07-15 16:50:22 @m4tx dzięki za odpowiedź. @pekfos sorry mój błąd powinno być cin >> z >> x >> c; |
|
« 1 » |