简单控制流程
顺序流
通常,控制从一个语句流向下一个语句。
first;
second;
third;
禁止操作
Felix提供了几个没有任何作用的语句。单独的分号 ; 是一个什么都不做的陈述。
first;
; // does nothing
second;
标签和goto
可以通过标记代码中的位置并使用goto或conditional goto来修改默认控制流。
var x = 1;
next:>
println$ x;
if x > 10 goto finished;
x = x + 1;
goto next;
finished:>
println$ "Done";
标识符后跟 :> 用于标记程序中的位置。
无条件的 goto 将控制权转移到标签后面的语句。
如果条件满足,也就是说,如果条件为真,条件goto将控制权转移到标签后面的语句。
连环条件句
链式条件是一系列条件goto的语法糖。看起来像这样:
if c1 do
stmt1a;
stmt1b;
elif c2 do
stmt2a;
stmt2b;
else
stmt3a;
stmt3b;
done
每个组中至少需要一个语句,即no操作 ; 无事可做时可使用。后面不需要分号 done .