Начальный курс программирования на языке Форт


ВВОД С КЛАВИАТУРЫ - часть 3


2 для пользователей систем, созданных до введения Стандарта-83. Слово EXPECT в таких системах требует наличия нуля в конце вводимого текста. Поэтому при выполнении приведенного выше примера на вашей системе между именем и запятой может появиться пробел.

-TRAILING здесь воспринимает нуль как невыводимый на печать символ и при его выводе печатается пробел. Во избежание этого нужно ввести текст посредством EXPECT в рабочую область (PAD), после чего скопировать его, используя SPAN, в слово ИМЯ-ПОЛЬЗОВАТЕЛЯ с требуемым числом символов:

: ПОЛУЧЕНИЕ-ИМЕНИ ИМЯ-ПОЛЬЗОВАТЕЛЯ 40 BLANK PAD 40 EXPECT PAD ИМЯ-ПОЛЬЗОВАТЕЛЯ SPAN @ CMOVE ;

SPAN - пользовательская переменная, в которой содержится фактическое число символов, полученных словом EXPECT,

KEY

( -- с)

Занесение на стек значения в коде ASCII очередного доступного символа на текущем устройстве ввода.

EXPECT

( а u --)

Ожидание и символов (или нажатий клавиши RETURN) с клавиатуры и запоминание их в участок памяти, начинающийся с адреса a и продолжавшийся сторону увеличения адресов. На нажатие клавиши ЗАБОЙ осуществляется возврат курсора.

SPAN

( -- a)

Содержится количество символов, полученных, словом EXPECT




Начало  Назад  Вперед