LOLCODE允许您通过各种语句控制程序流.本章解释了LOLCODE中可用的不同类型的语句.
没有任何赋值的表达式,即只是调用数学运算或任何函数,是LOLCODE的法律声明.评估表达式后,将其最终值放在临时变量IT中. IT的值保留在本地范围内,并且在下次用表达式替换之前一直存在.
分配语句是用于将任何表达式的输出分配给给定变量.它们的形式通常为 :
<any_variable> <assignment operator> <any expression>
请注意,即使在分配之前,您也可以在表达式中使用变量.
if-then语句是一个处理IT变量的非常简单的操作.它与其他编程语言(如C和Java)中的if-else语句类似.
有四个关键字可应用if-then语句.
O RLY?
YA RLY
NO WAI
OIC
一般表格是 :
<any_expression> O RLY? YA RLY <code to execute if above condition is true> NO WAI <code to execute in this block> OIC
所有上述陈述都可以写在同一行,用逗号分隔,如 :
BOTH SAEM NAMES AN "Name", O RLY? YA RLY, VISIBLE "My name is ABCD" NO WAI, VISIBLE "Your name is ABCD" OIC
在使用if-then语句时,可选的MEBBE<任何表达式>可以在YA RLY和NO WAI块之间使用.
如果< any expression>以下MEBBE为True(WIN),然后执行该块.否则,如果该表达式为false,则跳过该块直到下一个MEBBE,NO WAI或OIC语句.
<any expression> O RLY? YA RLY <code to be executed if true> MEBBE <expression> <code to be executed mebbe is true> MEBBE <expression> <code to be executed mebbe is true> NO WAI <code to be executed if above are false> OIC
BOTH SAEM NAMES AN "NAME" O RLY? YA RLY, VISIBLE "YOUR NAME IS ABCD" MEBBE BOTH SAEM ANIMAL AN "OUR NAME IS ABCD" VISIBLE "NO ABCD" OIC
在LOLCODE中,关键字"WTF?"类似于许多其他语言中的switch.关键字WTF?将IT作为比较的表达值.要使用WTF,OMG打开一个比较块,它应该是文字,而不是表达式.
请记住,每个文字必须是唯一的,类似于其他语言的情况.
OMG块必须由GTFO语句终止.如果OMG块没有被GTFO终止,则执行下一个OMG块直到达到GTFO.
如果没有一个文字计算为真,则OMGWTF表示默认情况.
WTF? OMG <any value to compare> <code block to execute if expression is satisfied> OMG <any value to compare> <code block to execute if expression is satisfied> OMGWTF <code block to execute as a default case> OIC NAME, WTF? OMG "A" VISIBLE "ABCD" GTFO OMG "E" VISIBLE "EFGH" GTFO OMGWTF VISIBLE "ZYXW" OIC
上述代码的输出结果为 :
"E":
EFGH