ЦИКЛ while

Цикл while, не заканчивается.Помогите исправить. (пжлст)

//счечик повторов и слов

#include "std_lib_facilities.h"// файл с библеотеками  
int main(int argc, char const *argv[])
{
int number_of_words=0,//cчечик слов
    i_current = 0;// счечик повторов
string previous =" ",//пустое слово
       current;//слово
    while (cin>>current){
        ++number_of_words;
        if(previous == current){
        ++i_current;
        previous=current;
    }
}
cout<<"Повторы: "<<i_current<<'\n'
    <<"Кол-во слов: "<<number_of_words<<'\n';
    return 0;
}

Цикл закончится, когда при попытке чтения из потока встретится конец файла.
Если ты читаешь с консоли, то вместо очередного слова надо нажать Ctrl-Z<Enter>.
Или, как вариант, запиши слова в текстовый файл и вводи в программу через перенаправленный ввод:

myprog.exe <words.txt

Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.

Ответить

Вы можете использовать разметку markdown для оформления комментариев и постов. Используйте функцию предпросмотра для проверки корректности разметки.

Пожалуйста, оформляйте исходный код в соответствии с правилами разметки. Для того, чтобы вставить код в комментарий, скопируйте его в текстовое поле ниже, после чего выделите то, что скопировали и нажмите кнопку «код» в панели инструментов. Иначе ваш код может принять нечитаемый вид.

Либо производите оформление кода вручную, следующим образом:

``` #include <iostream> using namespace std; int main() { // ... } ```

Предпросмотр сообщения

Ваше сообщение пусто.