Lua 编程中的全局变量

Lua 中的全局变量是不需要任何类型声明的变量。我们可以简单地定义变量的名称并为其分配我们想要的任何值,而无需使用任何关键字。

拥有全局变量使得某些编程案例成为可能,如果我们想要创建一个我们想要在多个函数中使用的变量,它也是首选。如果我们不使用全局变量,我们可能不得不将该变量传递给我们想要使用它的不同函数,这有点乏味。

语法

在 Lua 中声明全局变量的语法非常简单,只需声明您想为变量使用的任何名称并为其分配一个值。

<variable name> = <assigned value>

需要注意的是,我们不能在没有赋值的情况下声明一个全局变量,因为这不是 Lua 允许我们做的。

示例

考虑下面显示的例子 -

ans
print(ans)

在上面的代码示例中,我试图声明一个名为ans的变量,但不为其分配任何内容。这将导致错误。

输出结果

input:2: syntax error near 'print'

此外,相反,如果我不创建变量并尝试打印它或在函数中访问它,那么 Lua 不会向我抛出错误,它只会打印“ nil ”。仅当您没有显式创建它们而不为它们分配任何内容时,它才会考虑未初始化的变量。

示例

考虑下面显示的例子 -

print(a)

在上面的例子中,我没有创建一个名为a的变量,但是当我尝试访问它时,Lua 不会抛出错误。

输出结果

nil

现在,让我们看一个更广泛的 Lua 全局变量示例,在此我们考虑在声明和使用全局变量时需要处理的更多情况。

示例

print(ans)

i = 10
print(i)

_x = nil

print(_x)

_X = "mukul"
print(_X)
输出结果
nil
10
nil
mukul