подсчитать пробелы от ввода - PullRequest
2 голосов
/ 25 марта 2011

Я написал программу для подсчета пробелов.Я могу скомпилировать и запустить его, это нормально.Но почему не отображается счетчик?

#include<stdio.h>
main()
{ 
    int count=0;
    int c;

    while((c=getchar())!=EOF)
    {  
        if(c == ' ') count++;
    }
    printf("%d\n",count);
}

Ответы [ 2 ]

3 голосов
/ 25 марта 2011

Ваш точный код (ошибки и все) работает так, как вы ожидаете, на ideone .


Как вы прекращаете ввод? Чтобы отправить сигнал EOF в вашу программу из консоли типа, в начале строки, Ctrl D в Linux или Ctrl Z в Windows.


Также попробуйте запустить с перенаправленным вводом. Что-то вроде

yourprog < data.txt

или

echo one two three four | yourprog
1 голос
/ 25 марта 2011

Вы, вероятно, не получаете EOF, который вы ожидаете от ввода. Возможно, вы ожидаете, что клавиша Enter будет EOF, чего не произойдет. Вы пытались использовать одну из комбинаций Ctrl +, таких как Z или D (в зависимости от ОС), для отправки EOF?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...