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

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

Войти
Регистрация
Восстановить пароль
 
Luzifer
6 / 6 / 2
Регистрация: 28.06.2010
Сообщений: 88
#1

istream_iterator - C++

27.03.2013, 10:54. Просмотров 713. Ответов 3
Метки нет (Все метки)

Каким образом итератор std::istream_iterator<int> ii(std::cin); определяет сколько строк надо вводить?
"for(int i = 0; i < (реагирует на изменение); i++)"

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include "iostream"
#include <iterator>
#include <list>
#include <algorithm>
 
int main(int argc, char **argv)
{
    setlocale(LC_ALL, "Russian");
    std::istream_iterator<int> ii(std::cin);
    
    std::list<int> l1;
 
    for(int i = 0; i < 3; i++)
        l1.push_back(*ii++);
 
    std::list<int>::iterator it;
    for(it = l1.begin(); it != l1.end(); it++)
        std::cout << *it << " " << std::endl;
 
    std::cout << std::endl;
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.03.2013, 10:54     istream_iterator
Посмотрите здесь:

istream_iterator - C++
Почему столько ошибок? И как их исправить? Программа из книги, но почему-то не работает. #include &lt;iostream&gt; #include &lt;algorithm&gt; ...

istream_iterator - C++
Добрый день, уважаемые форумчане! Прошу ответить на следующий вопрос - почему, когда создается istream_iterator пустым конструктором...

Istream_iterator back_inserter - C++
привет всем ! есть такой код vector&lt;int&gt; vec; copy(istream_iterator&lt;int&gt;(cin), istream_iterator&lt;int&gt;(), (vec)); for(int i =...

Istringstream, istream_iterator - C++
std::string string1 std::cout &lt;&lt; &quot;Введите первую неубывающую последовательность натуральных чисел: &quot;; getline(std::cin, string1); ...

Отличие istreambuf_iterator от istream_iterator - C++
Прочитал все найденные похожие темы... Протестировал все, что можно... Но отличий так найти и не смог этих двух итераторов... Оба являются...

Borland c++ 5.02 ругается на istream_iterator - C++
Здравствуйте. Компилятор старый, но нужен именно он. В инклудах есть iterator.h Не могу запустить код из книжки братьев дейтеил. ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Tulosba
:)
Эксперт С++
4393 / 3236 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
27.03.2013, 11:03     istream_iterator #2
Цитата Сообщение от Luzifer Посмотреть сообщение
Каким образом итератор std::istream_iterator<int> ii(std::cin); определяет сколько строк надо вводить?
Нужно создать специальный итератор конца
C++
1
std::istream_iterator<int> eos;
и при чтении сравнивать его текущим. См. http://www.cplusplus.com/reference/i...ream_iterator/
SummerRain
326 / 325 / 17
Регистрация: 16.12.2012
Сообщений: 544
27.03.2013, 11:27     istream_iterator #3
по-моему это не то, о чём спрашивал автор.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <iostream>
#include <iterator>
#include <list>
#include <algorithm>
 
int main(int argc, char **argv)
{
    setlocale(LC_ALL, "Russian");
    std::istream_iterator<int> ii(std::cin);   // не тут он реагирует
    
    std::list<int> l1; 
    
    int a = *ii;  //  а тут
    int b = *++ii;  // и тут
    int c = a + b;
    l1.push_back(a);
    l1.push_back(b);
    l1.push_back(c);
 
    std::cout << std::endl;
 
    std::list<int>::iterator it;
    for(it = l1.begin(); it != l1.end(); it++)
        std::cout << *it << " " << std::endl;
 
    std::cout << std::endl;
    system("PAUSE");
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.03.2013, 11:31     istream_iterator
Еще ссылки по теме:

Visual studio и istream_iterator - C++
проблема в том, что visual studio 2013 не хочет вводить из файла строки в вектор строк с помощью istream_iterator. Причем, с остальными...

Разница межу istream_iterator и istreambuf_iterator - C++
что это за буфер во втором случае? И что он дает в отличие от первого варианта? Что-то доку переварить никак не получается...

Как исправить код с istream_iterator? - C++
Как исправить этот код, чтобы ввод заканчивался при вводе слова quit? Можно ли сделать с итераторами или уже нужно в простом цикле ввод...

STL, istream_iterator, в вектор считывается неверное количество символов - C++
Имеется программа, в которой происходит посимвольное чтение из файла в вектор: #include &lt;fstream&gt; #include &lt;iostream&gt; #include...


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

Или воспользуйтесь поиском по форуму:
Tulosba
:)
Эксперт С++
4393 / 3236 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
27.03.2013, 11:31     istream_iterator #4
Цитата Сообщение от SummerRain Посмотреть сообщение
по-моему это не то, о чём спрашивал автор.
Автор, о чем Вы спрашивали?
Yandex
Объявления
27.03.2013, 11:31     istream_iterator
Ответ Создать тему
Опции темы

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