Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
andrejap
13 / 13 / 1
Регистрация: 21.04.2013
Сообщений: 245
#1

Почему istream::get() ? - C++

15.02.2014, 17:18. Просмотров 286. Ответов 4
Метки нет (Все метки)

Здравствуйте.
Почему перед istream::getline, необходимо делать get(), если перед этим было cin >> char_array (filein >> char_array)? А между двумя cin >> char_array (filein >> char_array) не нужно?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.02.2014, 17:18     Почему istream::get() ?
Посмотрите здесь:

C++ Не работает getline(cin,s), istream.ignore()
istream и конец строки C++
C++ istream, ostream
C++ istream - считывание определённой строки
Объект cin и класс istream C++
std::istream часть кода C++
istream C++
C++ istream состояние bad
Перегрузка ofstream, istream C++
C++ В чем причина ошибки istream
C++ Использование конструктора с параметром istream
Функции istream, требуется объяснение C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
 Аватар для zss
6116 / 5719 / 1850
Регистрация: 18.12.2011
Сообщений: 14,617
Завершенные тесты: 1
15.02.2014, 17:23     Почему istream::get() ? #2
После операции ввода переменных указатель потока остается на символе
конца строки ('\n'). Поэтому очередной getline считывает строку,
содержащую только этот символ.
andrejap
13 / 13 / 1
Регистрация: 21.04.2013
Сообщений: 245
15.02.2014, 17:40  [ТС]     Почему istream::get() ? #3
zss, тогда у меня напрашивается вопрос: почему в случае
cin >> char_array;
cout << char_array;
cin >> char_array;
cout << char_array;

во втором выводе мы не видим этот '\n' на экране как пустую строку?
zss
Модератор
Эксперт С++
 Аватар для zss
6116 / 5719 / 1850
Регистрация: 18.12.2011
Сообщений: 14,617
Завершенные тесты: 1
15.02.2014, 17:52     Почему istream::get() ? #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
cin в начале пропускает пробельные символы (в т.ч. и конец строки).
andrejap
13 / 13 / 1
Регистрация: 21.04.2013
Сообщений: 245
15.02.2014, 17:57  [ТС]     Почему istream::get() ? #5
Cпасибо, zss!
Yandex
Объявления
15.02.2014, 17:57     Почему istream::get() ?
Ответ Создать тему
Опции темы

Текущее время: 10:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru