Составители:
Рубрика:
12
списков. Оценивает по очереди первые элементы списков, пока не встретится элемент,
отличный от nil. Затем вычисляется то выражение, которое следует за тестом, и возвращается
значение последнего выражения в субсписке. Если в субсписке только одно выражение
(например, результат отсутствует), то возвращается значение выражения тест.
Циклические конструкции
(repeat число выражение1 выражение2 ... ) Функция повторяет операторы
указанное число раз.
(while тест-выражение выражение1 выражение2 ... ) Выход из цикла
осуществляется по условию.
(foreach имя список выражение) Эта функция, проходя по списку, присваивает
каждому элементу имя и вычисляет каждое выражение для каждого элемента списка.
1.6. Работа с файлами
(open имяфайла режим ) Открыть файл - значит подготовить дескриптор файла к
использованию его функциями AutoLISP. Поэтому возвращаемое функцией open значение
должно присваиваться некоторой символьной переменной.
( setq a ( open "file.ext" "r" ))
;Здесь а - дескриптор файла file.ext, открытого для чтения.
(close дескриптор файла ) Закрытие файла.
(read-line дескриптор файла ) Cчитывает строку символов с клавиатуры или из
открытого файла. Возвращается считываемая строка.
(write-line строка дескриптор файла ) Записывает строковую константу строка на
экран или в открытый файл. Возвращает строку, взятую в кавычки, и опускает кавычки при
записи в файл.
Подробно работа с файлами рассмотрена в Приложении В.
1.7. Определение подпрограмм и функций
(defun <символ> <список аргументов> <выражение>...)
DEFUN - определяет функцию с именем <символ>. За функцией следует список
аргументов (возможно пустой), за которым следует (факультативно) косая черта (slach) и
имена одного или более локальных переменных функции. Косая черта должна отстоять от
первого локальной переменной и последнего аргумента хотя бы на один пробел. Если нет
аргументов и локальных символов, которые следует объявлять, за именем функции следует
поставить пустые скобки.
(defun myfunc (x y) ... ) ;(функция берет два аргумента)
(defun myfunc (/ a d) ... ) ;(функция имеет две локальных переменных)
(defun myfunc (x / temp) ... );(один аргумент и одна локальная переменная)
Страницы
- « первая
- ‹ предыдущая
- …
- 11
- 12
- 13
- 14
- 15
- …
- следующая ›
- последняя »