"Анри Бертьен. Стандартный набор операторов языка REXX (для OS/2) " - читать интересную книгу автора Кстати: если <выражение> начинается со специального знака, то ключевое
слово 'VALUE' может быть опущено. Поскольку такое выражение вряд ли будет выглядеть наглядно (попробуйте себе такое представить) - этой возможностью пользоваться явно не стоит: если используется <выражение> - уж не сочтите за труд использовать ключевое слово 'VALUE' - по крайней мере, чтобы потом не угадывать, что же здесь имелось в виду... В любом случае, чтобы определить имя текущей среды, Вы вправе воспользоваться встроенной функцией ADDRESS(). И ещё: если Вы выдаёте какую-либо команду (подкоманду) в какую-либо среду, то в общем случае, вовсе не обязательно, что эта команда на самом деле будет выполняться именно в указанной Вами среде. Так, текстовый редактор 'XEDIT', например, может передавать нераспознанные команды в среду команд основной системы (если установлен режим IMPCMS=ON). Аналогичные режимы могут иметь и другие среды. Например, если в среде CMS установлен режим IMPCP=ON, то нераспознанные команды передаются в среду CP. Вследствие этого при программировании следует избегать использования синонимов или усечений (т. е. неполных имён команд или подкоманд), ибо в противном случае непросто предвидеть, будет строка Address XEDIT 'SP ..... ' интерпретироваться, как подкоманда 'SPLIT' редактора XEDIT (если усечение допустимо), или - как команда 'SPOOL' среды 'CP' (если такого усечения в среде XEDIT нет и установлено, как обычно, 'IMPCMS=ON' и 'IMPCP=ON', вследствие чего подкоманды, нераспознанные в среде 'XEDIT', передаются в среду 'CMS', а нераспознанные команды этой среды передаются в среду 'CP'). Формат: Arg <шаблон> Оператор ARG предназначен для анализа входных параметров REXX-программы или подпрограммы. Представляет собой более краткую форму записи оператора PARSE UPPER ARG. Структура <шаблона> подробно описывается при рассмотрении оператора "PARSE UPPER ARG". Например: 1) если в командной строке системы набрать: FRED Привет, дружище! то в системной процедуре с именем FRED в результате выполнения оператора Arg firstword secondword rest переменным FIRSTWORD, SECONDWORD и REST будут присвоены следующие значения: Firstword -> 'Привет,' Secondword -> 'дружище!' Rest -> '' Этот результат справедлив также для макрокоманд редакторов XEDIT и KEDIT. 2) если в программе FRED встретится оператор |
|
|