在Lua中处理可变数量的参数

我正在传递参数到一个 Lua 脚本中,并使用以下语句检索它们:

local arg1, arg2 = ...

现在我想使用不同的语法,其无序,并且可以调用:

./myscript.lua arg1=val1 arg2=val2

因此,我正在尝试以下操作:

args = ...
params = {}

for i, k in pairs(args) do
  p, v = split(a, "=")
  params[p] = v
end

但这不起作用,因为args仅获取第一个参数的值。

如何一次检索传递给脚本的所有参数?

注意:使用 lua_pcall从 C 执行脚本。

点赞
用户1009479
用户1009479

使用 {...} 这样分配它:

args = {...}
params = {}

for i, k in ipairs(args) do
  print(i, k)
end

实际上,args 是不必要的:

for i, k in ipairs{...} do
2015-09-23 09:39:21