Использует ли блок while ничего плохого? - PullRequest
23 голосов
/ 15 января 2009

В настоящее время я работаю над упражнениями на языке программирования Си. Вот одно из моих решений:

int c;

while ((c=getchar()) != EOF) {

if (c == ' ') {

    while ((c = getchar()) == ' ')

    {}  // do nothing?

    putchar(' ');

}

putchar(c);

}

Я нашел несколько решений здесь , которые сильно отличаются от моих и используют дополнительную переменную для отслеживания происходящего, тогда как я просто использую цикл while для пропуска всех пробелов. Мое решение кажется немного грязным, так как кажется немного хакерским иметь цикл while без фигурных скобок. Мне было интересно, есть ли веские причины не делать этого? Спасибо за любой совет :-)

Ответы [ 12 ]

0 голосов
/ 15 января 2009

Думаю, в этом нет проблем. Вы можете использовать его, во многих ситуациях я предпочитаю.

0 голосов
/ 15 января 2009

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

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