首页 理论教育AutoLISP表达式结构

AutoLISP表达式结构

【摘要】:AutoLISP表达式的形式如下:每个表达式以左括号开始,并由函数名可选的参数组成,每个参数也可能是表达式。嵌套的表达式将它们的值返回到外层表达式中,下面的例子使用由+(加法)函数生成的结果作为*(乘法)函数的参数:如果左右括号的数目不匹配,AutoLISP将显示下列的提示:提示表明了有多少个未被匹配的括号。如果出现这个提示,必须输入所需的右括号使表达式能被计算。

AutoLISP表达式的形式如下:

(函数[参数])

每个表达式以左括号开始,并由函数名可选的参数组成,每个参数也可能是表达式。表达式以右括号结束,每一个表达式的返回值都能被外层表达式使用。最后计算的值被返回到调用的表达式。

例如,下列的代码例子包括3个函数:

(fun1(fun2参数)(fun3参数))

如果用户在VisualLISP控制台提示行或AutoCAD命令提示行输入这行代码,AutoCAD的AutoLISP解释程序将执行此代码。第一个函数fun1包括两个参数,另两个函数fun2和fun3均只有一个参数。函数fun2和fun3被包含在函数fun1中,这样它们的返回值作为fun1的参数。函数比fun1计算这两个参数并将值返回到输入代码的窗口中。

下面的例子说明了如何使用*(乘法)函数,该函数可以接受一个或多个数值作为参数:(www.chuimin.cn)

因为这个例子没有外层表达式,AutoLISP将结果返回到输入代码的窗口中。

嵌套的表达式将它们的值返回到外层表达式中,下面的例子使用由+(加法)函数生成的结果作为*(乘法)函数的参数:

如果左右括号的数目不匹配,AutoLISP将显示下列的提示:

提示表明了有多少个未被匹配的括号。如果出现这个提示,必须输入所需的右括号使表达式能被计算。例如:

另一个常见的错误是在文本字符串后遗漏引号("),在此情况下右括号被当成文本字符串的一部分而无法使括号匹配。改正的方法是按Shift+Esc键中止函数执行,然后再正确地输入。