0 / 0 / 0
Регистрация: 15.08.2019
Сообщений: 2
1

Как работает объект istream?

15.08.2019, 20:49. Показов 1147. Ответов 1
Метки нет (Все метки)

Есть кусок кода

C++
1
2
3
4
5
6
7
8
9
10
istream & operator>>(istream & is, String & st)
{
    char temp[String::CINLIM];
    is.get(temp, String::CINLIM);
    if (is)
        st = temp;
    while (is && is.get() != '\n')
        continue;
    return is;
}
Не понимаю как в этой строчке работает объект istream 'is'.
C++
1
2
while (is && is.get() != '\n')
        continue;
Почему он может сравниваться с символом новой строки?
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.08.2019, 20:49
Ответы с готовыми решениями:

Объект cin и класс istream
В учебнике приводиться такое задание: "Напишите функцию, получающую и возвращающую ссылку на...

Разница между istream::putback и istream::unget
Можете объяснить, пожалуйста, разницу этих двух функций?

Не работает getline(cin,s), istream.ignore()
Использую microsoft visual c++ 6.0. не работает: string s; getline(cin,s);//дважды приходиться...

Выделение памяти для буффера, под std::istream& operator>>(std::istream &, String &)
Добрый день. Как осуществляется выделения памяти под перегруженный оператор ввода данных в...

1
4175 / 2379 / 993
Регистрация: 07.02.2019
Сообщений: 6,214
15.08.2019, 21:02 2
Лучший ответ Сообщение было отмечено Sad0vnik как решение

Решение

Цитата Сообщение от Sad0vnik Посмотреть сообщение
Почему он может сравниваться с символом новой строки?
эта строка буквально означает следующее: пока поток в состоянии good и считанный символ не символ перехода на новую строку считываем символ

Добавлено через 57 секунд
Другими словами пропускаем оставшиеся в строке символы
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.08.2019, 21:02

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Parse_matrix(std::istream& in); std::istream& in что это значит?
Есть функция которую необходимо описать: std::pair<int, int> parse_matrix(std::istream& in){ ...

Как правильно унаследовать ostream, istream ?
Ну вообщем цель такова, чтобы в функцию можно было передать либо обьект моего класса, либо же cout...

Как определить тип данных потока istream
создал класс, перегрузил оператор ввода istream & operator >>(istream& in, Stack& cl){ } ...

Как работает динамическое выделение памяти под объект?
class A { public: A(int x){} ~A(){} }; const int n = 50; A* placementMemory =...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.