AMIGA # 1
ERROR и FAIL работают аналогично WARN, но для значения кода возврата 10 и 20 соответственно. Ключевое слово EQ (от слова EQual — равно) может использоваться для проверки на равенство двух строк, содержащих произвольные символы, регистр букв при этом игнорируется. Для того, чтобы проверка давала правильный результат для строк, содержащих русские буквы различных регистров, у вас должна быть как минимум ОС 2.1, а также русификатор начиная с пятой версии. Строки, содержащие пробелы, должны быть обязательно заключены в кавычки. Вместо строк можно без ограничений использовать имена переменных окружения (перед этими именами должен стоять знак доллара). Если одна строка длиннее другой, то в любом случае они считаются не равными. Пример использования EQ:
IF \"РОТА, ПОДЪЕМ!\" EQ \"рота, подъем!\"
echo \"Проверка работает правильно\"
ELSE
echo \"У вас старый русификатор или старая Амига\"
ENDIF Весьма специфический текст этого примера связан с необходимостью проверить правильность сравнения строчного твердого знака с заглавным — только языковой драйвер \"LOCALE:Languages/russian.language\", поставляемый с русификатором 5-й версии, позволяет правильно сравнивать твердые знаки в разных регистрах. Столь запоздалое появление языкового драйвера связано с полнейшим отсутствием документации по имеющимся функциям, включаемым в драйверы, а также по способам вызова этих функций, только недавно удалось выкроить время и со всем этим разобраться. Комбинация NOT EQ будет означать \"не равно\". Параметры-переключали GT и GE также, как и EQ сравнивают содержимое двух строк. GT означает \"больше чем\" (от слова GreaTer), a GE — больше или равно (от Greater or Equal). Комбинации NOT GT и NOT GE будут соответственно означать \"меньше или равно\" и \"меньше\". При сравнении символов на \"больше-меньше\" учитываются значения их беззнаковых ASCII-кодов (в отличие, например, от трактовки ASCII-символов командой EVAL), например \"ъ\" имеет код 255 (а не -1). Регистры букв не учитываются, как и в случае параметра EQ.
|