LISP - 循环语句

LISP - 循环语句 首页 / LISP入门教程 / LISP - 循环语句

在某些情况下,您需要执行一段代码次数,循环语句使我们可以多次执行一个语句或一组语句,以下是大多数编程语言中循环语句的一般形式。

Loops

LISP提供以下类型的构造来处理循环需求。单击以下链接以查看其详细信息。

Sr.No.Construct & 描述
1 loop

以最简单的形式,它允许您重复执行某些语句,直到找到 return 语句。

2 loop for

循环for构造使您可以像其他语言中最常见的那样实现for循环,如迭代。

3 do

do构造还用于使用LISP执行迭代。

4 dotimes

dotimes构造允许循环进行一定数量的迭代。

无涯教程网

5 dolist

dolist构造允许迭代列表的每个元素。

block退出块

block 和 return-from 允许您在出现任何错误的情况下从任何嵌套的块中正常退出。

block 函数允许您创建一个包含零个或多个语句的主体的命名块。语法是-

(block block-name(
...
...
))

return-from 函数采用一个块名称和一个可选的(默认值为nil)返回值。

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

(defun demo-function (flag)
   (print 'entering-outer-block)
   
   (block outer-block
      (print 'entering-inner-block)
      (print (block inner-block

         (if flag
            (return-from outer-block 3)
            (return-from inner-block 5)
         )

         (print 'This-wil--not-be-printed))
      )

      (print 'left-inner-block)
      (print 'leaving-outer-block)
   t)
)
(demo-function t)
(terpri)
(demo-function nil)

当您单击执行按钮或键入Ctrl + E时,LISP立即执行它,返回的输出是-

ENTERING-OUTER-BLOCK 
ENTERING-INNER-BLOCK 

ENTERING-OUTER-BLOCK 
ENTERING-INNER-BLOCK 
5 
LEFT-INNER-BLOCK 
LEAVING-OUTER-BLOCK

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

白话法律42讲 -〔周甲徳〕

玩转Git三剑客 -〔苏玲〕

即时消息技术剖析与实战 -〔袁武林〕

分布式协议与算法实战 -〔韩健〕

分布式数据库30讲 -〔王磊〕

性能优化高手课 -〔尉刚强〕

Serverless进阶实战课 -〔静远〕

现代C++20实战高手课 -〔卢誉声〕

工程师个人发展指南 -〔李云〕

好记忆不如烂笔头。留下您的足迹吧 :)