如何使用 lua 构建中缀 TO 前缀函数
Posted
技术标签:
【中文标题】如何使用 lua 构建中缀 TO 前缀函数【英文标题】:How to build a infix TO prefix function using lua 【发布时间】:2017-06-28 07:58:41 【问题描述】:我想创建一个 infixTopostfix 函数,它将接受一个中缀表达式并将其转换为前缀表达式。我想知道是否有任何内置前缀来中缀函数或运算符可以帮助我?
【问题讨论】:
将中缀转换为前缀表达式是什么意思?你想操纵字符串吗? Lua中没有内置这样的东西。但是很可能有一些代码可以在线获得,或者您自己编写。 是否有可用于 lua 的内置堆栈 当然 Lua 有一个堆栈...请使用 google 解决这些琐碎的问题。请阅读How to Ask 并改进您的问题。否则它将被否决和/或关闭。 【参考方案1】:问:是否有适用于 Lua 的内置堆栈? A:在 Lua 中实现栈很容易。
local stack =
local function push(value)
table.insert(stack, value)
end
local function pop()
return table.remove(stack)
end
-- Example:
push(42)
push('Yes, Lua has a stack')
print(pop())
print(pop())
-- Output:
-- Yes, Lua has a stack
-- 42
只是不要将nil
推入堆栈。
【讨论】:
lua中是否有内置堆栈 是的,所有的局部变量都存放在栈中。只需使用递归和局部变量(函数参数也是局部变量)来利用内置堆栈。以上是关于如何使用 lua 构建中缀 TO 前缀函数的主要内容,如果未能解决你的问题,请参考以下文章