Итераторы без контейнеров STL - PullRequest
0 голосов
/ 29 мая 2020

Сначала извините за мой Engli sh. Я m preparing for my exam and I need to practice iterators, that don т работаю с контейнерами. Я хотел бы ввести несколько символов прямо к символу, например '\ n', и я понятия не имею, как я могу это сделать. Проблема в том, что я не могу перестать вводить символы. Надеюсь, ты сможешь мне помочь. Искренне спасибо!


#include <iostream>
#include <iterator>
#include <algorithm>
#include <fstream>
using namespace std;
int main()
{
    ofstream out("name.txt");
    istream_iterator<char> it(cin);
    istream_iterator<char> end_of_stream;
    ostream_iterator<char> fout(out, " ");
    copy (it, end_of_stream, fout);
}

1 Ответ

0 голосов
/ 29 мая 2020

Нет алгоритма для копирования, пока вы не получите конкретное значение (я думаю), поэтому вместо этого вам нужно написать свой собственный l oop.

Вот так

while (it != end_of_stream && *it != '\n')
{
    fout << *it;
    ++it;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...