Книга: Язык Си - руководство для начинающих

Чтение одной строки

Чтение одной строки

     Давайте подумаем, какие дополнительные усовершенствования можно ввести в программу, используя только те средства, которыми мы владеем. Первое, что легко можно сделать - это заменить признак окончания ввода данных. Но можно ли предложить что-то лучшее, чем символ *? Одной из возможностей является использование символа "нова строка" (n). Для этого нужно лишь переопределить признак STOP.

#define STOP   ' n '

     Какой это даст эффект? Очень большой ведь символ "новая стрoка" пересылается при нажатии клавиши [ввод], следовательно, в результате наша программа будет обрабатывать одну вводимую строку. Предположим, например, что мы внесли указанное изменение в программу подсчет символов1, а затем при ее выполнении ввели следующую строку:

О! Быть сейчас во Фресно, когда здесь лето, [ввод]

В ответ на экране появятся следующие строки

О! Быть сейчас во Фресно,  когда здесь лeтo,  Всего бьпо прсчитано 43 симвoлa

     (Если бы мы не включили в управляющую строку оператора printf( ) в качестве первого символа признак n, второе сообщение появилось бы справа от запятой, после слова лето. Мы предпочли избежать такого склеивания строк).

     Признак, появляющийся в результате нажатия клавиши [ввод] не входит в число символов (43), подсчитанных программой, поскольку подсчет осуществляется внутри цикла.

Оглавление книги


Генерация: 5.679. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз