当前位置: 首页 > 文档资料 > LISP 中文教程 >

if

优质
小牛编辑
125浏览
2023-12-01

if宏后跟一个计算为t或nil的test子句。 如果将test子句计算到t,则执行test子句后面的操作。 如果它是nil,则评估下一个子句。

if的语法 -

(if (test-clause) (action<sub>1</sub>) (action<sub>2</sub>))

例子1 (Example 1)

创建一个名为main.lisp的新源代码文件,并在其中键入以下代码。

(setq a 10)
(if (> a 20)
   (format t "~% a is less than 20"))
(format t "~% value of a is ~d " a)

单击“执行”按钮或键入Ctrl + E时,LISP立即执行它,返回的结果为 -

value of a is 10

例子2 (Example 2)

if子句后面可以跟一个可选的then子句。

创建一个名为main.lisp的新源代码文件,并在其中键入以下代码。

(setq a 10)
(if (> a 20)
   then (format t "~% a is less than 20"))
(format t "~% value of a is ~d " a)

单击“执行”按钮或键入Ctrl + E时,LISP立即执行它,返回的结果为 -

a is less than 20
value of a is 10 

例子3 (Example 3)

您还可以使用if子句创建if-then-else类型语句。

创建一个名为main.lisp的新源代码文件,并在其中键入以下代码。

(setq a 100)
(if (> a 20)
   (format t "~% a is greater than 20") 
   (format t "~% a is less than 20"))
(format t "~% value of a is ~d " a)

单击“执行”按钮或键入Ctrl + E时,LISP立即执行它,返回的结果为 -

a is greater than 20
value of a is 100