理论教育 AutoLISP程序结构与语法规则分析

AutoLISP程序结构与语法规则分析

时间:2023-11-04 理论教育 版权反馈
【摘要】:从该例可以看出,AutoLISP程序由表达式和注释组成。规则3前缀表示法AutoLISP语言的结构与常用高级结构有所区别。AutoLISP则采用“前缀表示法”,即把运算符放在参数表的第一个元素的位置,后面为其参数。规则5程序书写格式十分灵活在AutoLISP程序中,最简单的程序可以是只有一个表达式的程序。所以,执行AutoLISP程序就是执行一些函数,再调用其他函数,而AutoLISP程序的运行过程就是对函数求值的过程。

AutoLISP程序结构与语法规则分析

为说明AutoLISP的程序结构,首先看一个简单的AutoLISP程序,如下所示:

本例非常简单,执行后将绘出圆心为(100,100),半径为50的圆。从该例可以看出,AutoLISP程序由表达式和注释组成。

规则1以括号组成表达式,左右括号“(”和“)”一定要配对。表达式是AutoLISP的基本语句,所有表达式都具有以下形式:

(函数[参数表])

即由一个函数名和调用这个函数所需的参数表组成。参数表中的参数也可以是表达式,即AutoLISP的表达式可以嵌套

规则2注释以分号“;”开头,它可以单独位于一行,也可以位于某一程序语句的后面。编写AutoLISP程序时,应添加必要的注释,以说明程序的功能、编写时间、作者、某些程序代码的具体含义等信息,这些信息将有助于程序的编写与修改。

规则3前缀表示法AutoLISP语言的结构与常用高级结构有所区别。像BASIC、PASCAL、C等语言均采用“中缀表示法”。当给变量a赋值12.0时,通常为下面的形式

a=12.0(www.daowen.com)

即赋值运算符“=”位于中间。

AutoLISP则采用“前缀表示法”,即把运算符放在参数表的第一个元素的位置,后面为其参数。

例如,表达式X=(A+B)×C在AutoLISP中表示为

(setq X(*(+AB)C))

规则4运算顺序“由内而外、由左而右”在AutoLISP表达式中,函数参数表对表达式的执行过程是从最内层表开始逐步到最外层表,每个表达式都会返回一个值,该值可以被变量或外层表达式引用。如果没被引用,返回值会显示在AutoCAD的命令窗口。

规则5程序书写格式十分灵活在AutoLISP程序中,最简单的程序可以是只有一个表达式的程序。一个表达式可以分写在多行,也可以将多个表达式合写在一行。

可以看出,AutoLISP程序中,除注释外,其他所有成分均以表达式的形式给出,而各表达式一般通过调用函数来执行。所以,执行AutoLISP程序就是执行一些函数,再调用其他函数,而AutoLISP程序的运行过程就是对函数求值的过程。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈