“ showpage()”在这段代码中如何工作?

时间:2019-09-30 20:02:05

标签: if-statement lua

我一直在从http://www.lua.org/pil/4.3.1.html学习Lua,他们有这段代码:

if line > MAXLINES then
  showpage()
  line = 0
end

我不明白“ showpage()”在这里的作用。我不知道这只是一个必须预先定义的函数的示例(并且我不知道您是否可以使用函数实际执行此操作)还是我不知道的库。 / p>

1 个答案:

答案 0 :(得分:2)

showpage不是标准的Lua函数。您可以在Lua reference manual中找到Lua的任何内置函数。

如果找不到函数,则该函数是用户定义的。您将在第5章中学习如何定义函数。

在您调用showpage之前,确实有必要对其进行定义。否则,您将在调用nil值时遇到错误消息。

您会发现许多代码示例都跳过了一些变量的定义。

 if a<0 then a = 0 end

 if a<b then return a else return b end

 if line > MAXLINES then
   showpage()
   line = 0
 end

在此示例中,abshowpagelineMAXLINES均为nil。所有这些都会导致错误,因为您既不可以调用nil值,也不可以将nil值与数字进行比较。

不确定作者是否懒惰,想减少页数或打算让您考虑他们的代码。