Futurebasic/语言/参考/长 IF
外观
LONG IF expr [statementBlock1] [XELSE[statementBlock2]] END IF
长 IF
语句标志着 "if-block" 的开始,该语句块必须以 END IF
语句结束。expr
可以是逻辑表达式(例如:personCount>17
)、数值表达式或字符串。如果数值表达式计算结果为非零值,则认为其为 "true"。如果字符串的长度大于零,则认为其为 "true"。
如果 expr
为 "true",则仅执行 statementBlock1
中的语句,然后从 END IF
后的第一个语句继续执行。如果 expr
为 "false",则仅执行 statementBlock2
(如果有)中的语句,然后从 END IF
后的第一个语句继续执行。
statementBlock1
和 statementBlock2
可以包含任意数量的可执行语句,甚至可以包含其他 "嵌套" 的 if-block。
要仅条件执行单个语句,请考虑使用 IF
语句。要基于更复杂的条件条件执行语句块,请使用 SELECT CASE
语句。
比较浮点数与零或整数时要小心。以下表达式可能无法按预期进行评估
长 IF x# = 1
在此语句中,编译器将 x# 中的值与整数 "1" 进行比较。由于 SANE 和 PPC 数学都使用数字的近似值,因此 x# 的实际值虽然非常接近于 1,但实际上可能类似于 0.99999999,因此会产生意外的结果。