• RSS订阅 加入收藏  设为首页
ZEMAX

ZPL中的程序流控制

时间:2024/11/24 22:09:21   作者:Leslie   来源:正势利   阅读:57   评论:0
内容摘要:程序流控制

程序流控制是计算机语言中的一个核心部分。ZPL 提供了以下这些进行程序流控制的关键词:

FOR-NEXT

IF-THEN-ELSE-ENDIF

LABEL

GOTO

PAUSE

GOSUB-SUB-RETURN-END

FOR-NEXT 总是成对出现,用于定义一段需要重复执行多次的程序,其用法如

下:

FOR variable, start_value, stop_value, increment

(commands)

NEXT

其中,FOR 标明需要重复执行的程序段的开始,在此语句中,需要定义一个变量variable 作为计数器(此变量不一定为整数),还需要定义计数器的起始值start_value、中止值 stop_value 及增量 increment。NEXT 标明需要重复执行的程序段的结束。在 FOR-NEXT 之间的语句,则是需要重复执行的程序段,其重复执行的次数由 FOR 语句中定义的参数来控制。FOR-NEXT 关键词可以多层套用。

在 FOR 语句的第一个变量 variable 后面,除了跟逗号 “,” 之外,也可以改成等号“=”,即 FOR variable = start_value, stop_value, increment,有许多编程者偏爱这种形式,认为这样程序更加清晰。另外,在 NEXT 后面可以加上其它字符而不影响程序的运行,因此有很多编程者喜欢在 NEXT 后加上相应的循环变量名,特别是在多重循环套用的时候,这使程序结构更加清晰。需要指出的是,NEXT 后面的字符不具有任何实质意义,在使用时要注意别引起混淆。

当程序运行到 FOR 语句时,此语句中的起始值、中止值及增量将被存储起来。在随后的程序运行过程中,直至整个程序段重复运行结束,中止值及增量将不再改变。所以在程序段中其它地方不能再对其进行赋值。

IF-THEN-ELSE-ENDIF为条件执行语句,其用法为:

IF (expression)

(commands)

ELSE

(commands)

ENDIF

IF (expression) THEN (command)

当逻辑表达式expression结果为真时,执行IF后面的commands命令语句,否则执行ELSE后面的commands命令语句。注意此处的括号()可以省略。一般情况下,条件表达式中IF和ENDIF总是成对出现,而ELSE则为可选项。IF-ENDIF关键词可以多层套用。

IF(expression)THEN(command)为条件表达式的简略形式,用于只有单一命令语句需要执行的情况。在简略形式中,不需要 ENDIF,也不支持ELSE

选项。

在某些情况下,需要让程序转向指定的位置去继续执行,这时就可以用到关键词GOTO。关键词 GOTO 总是与另一关键词 LABEL 配合使用,其用法为:

LABEL label_number

GOTO label-number

或者:

LABEL text_label

GOTO text_label

其中,LABEL 后面可以跟任意数字或字符串(此处可以理解为数字也是一种字符),并可置于程序中的任意行。当程序执行到 GOTO 语句时,转向相应的LABEL 语句,继续执行 LABEL 语句后面的语句。

ZPL 中还有一个关键词 PAUSE,用于暂停程序的执行,并在消息窗口中显示相应信息,等待用户的响应。在用户按 OK 按钮后,程序从暂停处继续执行。关键词PAUSE 的用法如下:

PAUSE

PAUSE message

其中,message可以是任何数值量,也可以是字符串。



标签:中的 程序 控制 

逝者如斯,不舍昼夜作者QQ及微信:49922779 点击这里给我发消息

相关评论
QQ交流群:120100441    QQ客服:49922779 闽ICP备01008686号