Lolcode - 语法

下表显示了迄今为止 Lolcode 实现的结构的字母顺序列表 −

Sr.No. 构造和使用
1

BTW

它开始单行注释。

2

DOWN <variable>!!<times>

这对应于variable=variable-times。 请注意,"times"是一个仅限 wut 的语言扩展。

3

GIMMEH <variable>

这代表输入语句。

4

GTFO

这与其他语言中的break类似,提供了一种跳出循环的方法。

5

HAI

这对应于其他语言中的main()函数。 它是LOLCODE中的程序入口点。

6

HEREZ <label>

这是另一种仅限 wut 的语言扩展,并声明一个与 SHOO 一起使用的标签

7

I HAS A <type> <variable>

这声明了一个所述类型的变量。

LOLCODE中内置了三种类型 −

  • NUMBAH (int)
  • DECINUMBAH (double)
  • WORDZ (std::string)

请注意,类型是仅限 wut 的语言扩展。

8

IM IN YR LOOP

这将启动无限循环。 退出循环的唯一方法是使用 GTFO。 相当于其他语言中的 for(;;)

9

IZ <expr1> <operator> <expr2>?: Conditional structure

这类似于其他语言中的 if 运算符。 运算符是以下之一:BIGGER THAN、SMALLER THAN、SAEM AS。 请注意,? 最后是可选的。

10

KTHX

它结束了一个块。 对应于}

11

KTHXBAI

程序结束

12

NOWAI

这对应于 else

13

PURR <expr>

这会在屏幕上打印参数,后跟换行符。 这是一个仅限 wut 的语言扩展。

14

RELSE

这对应于else(if)

15

SHOO

这是另一种仅限 wut 的语言扩展,对应于 goto(恐怖!)

16

UP <variable>!!<times>

这对应于variable=variable+times。 这里的"times"是一个仅限wut的语言扩展。

17

VISIBLE <expr>

这会在屏幕上打印参数。 请注意,这不会打印换行符。

18

YARLY

这表示"true"条件块的开始

LOLCODE 中的一些俚语示例如下 −

  • HAI is hi
  • KTHXBYE is okay, thanks, bye
  • BTW is by the way
  • OBTW is oh, by the way
  • TLDR is too long; didn't read

空白

在大多数编程语言中,关键字或标记之间可能没有空格。 但是,在某些语言中,标记中使用空格来区分它们。

逗号

在大多数语言中,逗号的行为类似于换行符关键字,例如, 在 Java 和 C 语言中。在 LOLCODE 中,您可以在一行中编写许多命令,前提是使用逗号 (,) 分隔它们。

三个句点 (...)

三个句点 (...) 使您能够通过在行末尾包含 (...) 将多行代码组合成一行或单个命令。 这使得编译器仅将下一行的内容视为上一行的内容。 可以将无限行代码一起编写为单个命令,只要每行以三个句点结束即可。

注释以换行符结束。 请注意,注释 (BTW) 后面的续行符 (...) 和 (,) 会被 lci 忽略。

注释

单行注释后面跟着 BTW 关键字。 它们可能出现在程序主体内的任何位置:可以在程序的第一行、程序之间、某行之间或程序的末尾。

所有这些都是有效的单行注释−

I HAS A VAL ITZ 19      BTW VAL = 19
I HAS A VAL ITZ 19,   BTW VAL = 19
I HAS A VAL ITZ 14
BTW VAR = 14

在LOLCODE中,多行注释写在OBTW后面,并以TLDR结束。

这是有效的多行注释 −

I HAS A VAL ITZ 51
   OBTW this is a comment
      No it’s a two line comment
      Oops no.. it has many lines here
   TLDR

文件创建

LOLCODE 程序以 HAI 关键字开头,并应以 KTHXBYE 结尾。 由于LOLCODE使用简写语言,HAI基本上代表Hi,而KTHXBYE可以被记住为"Ok, thanks, bye "

示例

HAI 1.2
I HAS A NAME
VISIBLE "NAME::"!
GIMMEH NAME
VISIBLE "tutorialsPoint " NAME "!"
KTHXBYE