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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.60
Andersen1313
8 / 8 / 1
Регистрация: 18.10.2010
Сообщений: 120
#1

Как закончить ввод в итератор ввода для потока - C++

29.03.2013, 11:52. Просмотров 1537. Ответов 7
Метки нет (Все метки)

По задумке в представленном ниже коде вводятся слова в консоль, потом как то ввод прекращается и программа дальше выполняет свои подсчеты и выводит результат. Что я должен нажать в консоли, что бы прекратить ввод? А то у меня получается бесконечный ввод.. нажимаю Enter переводит строку и продолжает читать, что я ввожу

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
#include <string>
#include <map>
#include <iostream>
#include <iterator>
#include <algorithm>
 
using namespace std;
 
map<string, int> histogram;
 
void record(const string& s)
{
    histogram[s]++;
}
 
void print(const pair<const string, int>& r)
{
    cout << r.first << ' ' << r.second << '\n';
}
 
int main()
{
    istream_iterator<string> ii(cin);
    istream_iterator<string> eos;
 
    for_each(ii,eos,record);
    for_each(histogram.begin(),histogram.end(),print);
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.03.2013, 11:52     Как закончить ввод в итератор ввода для потока
Посмотрите здесь:

C++ Как можно бы создать метод для ввода размерности (т.е. для ввода private переменных n,m)?
Перевод потока из файлового ввода/вывода в консольный ввод/вывод C++
C++ Есть ли способ закончить "cin" и продолжить программу без ввода?
Ввод данных в string, очистка потока ввода C++
Ctrl+Z или Как закончить ввод с консоли? C++
C++ Как правильно распознать команды со стандартного потока ввода
C++ Считать с файла числа через итератор потока
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
asics
Freelance
Эксперт C++
2844 / 1781 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
29.03.2013, 11:59     Как закончить ввод в итератор ввода для потока #2
Ctrl+Z у виндовс. Ctrl+D в линуксе.
Andersen1313
8 / 8 / 1
Регистрация: 18.10.2010
Сообщений: 120
29.03.2013, 12:02  [ТС]     Как закончить ввод в итератор ввода для потока #3
О, спасибо! Я мучался забыл уже.. была как то такое помню
Jan_Zverev
0 / 0 / 0
Регистрация: 30.03.2017
Сообщений: 5
16.04.2017, 04:33     Как закончить ввод в итератор ввода для потока #4
Ну вот, и здесь про MacOS нет инфы)
Max Dark
шКодер самоучка
1658 / 1459 / 527
Регистрация: 09.10.2013
Сообщений: 3,317
Записей в блоге: 8
Завершенные тесты: 2
16.04.2017, 04:49     Как закончить ввод в итератор ввода для потока #5
Цитата Сообщение от Jan_Zverev Посмотреть сообщение
Ну вот, и здесь про MacOS нет инфы)
MacOS является Unix-like, так что думаю Ctrl+D
Jan_Zverev
0 / 0 / 0
Регистрация: 30.03.2017
Сообщений: 5
16.04.2017, 04:50     Как закончить ввод в итератор ввода для потока #6
Да, уже проверил, работает)
avgoor
879 / 514 / 111
Регистрация: 05.12.2015
Сообщений: 1,454
16.04.2017, 05:00     Как закончить ввод в итератор ввода для потока #7
Цитата Сообщение от Jan_Zverev Посмотреть сообщение
Ну вот, и здесь про MacOS нет инфы)
Как закончить ввод в итератор ввода для потока
Простите, не удержался.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.04.2017, 05:06     Как закончить ввод в итератор ввода для потока
Еще ссылки по теме:

Реализовать двусвязный список (list), итератор (iterator) и константный итератор (сonst_iterator) для списка C++
C++ При нажатии Enter закончить ввод
C++ Использование потока cin для ввода символов
C++ Формат ввода: как осуществить построчный ввод?
Нюансы ввода/вывода: как правильно организовать ввод строки с пробелами? C++

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

Или воспользуйтесь поиском по форуму:
Jan_Zverev
0 / 0 / 0
Регистрация: 30.03.2017
Сообщений: 5
16.04.2017, 05:06     Как закончить ввод в итератор ввода для потока #8
Хех
Yandex
Объявления
16.04.2017, 05:06     Как закончить ввод в итератор ввода для потока
Ответ Создать тему
Опции темы

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