我已经开始对Lua进行一些研究,并且对embedded Lua的工作方式感到非常困惑:
说
由于Lua标头和库都是用C编写的,因此您的程序还需要C或C ++编译器。
那意味着我只需要一个C / C ++编译器来执行Lua,因为库和头文件都是用C编写的。这意味着我编写和/或使用的所有库都是C代码?
我可能误解了这一点,但对我而言,这意味着:
我在Lua中编写了一些代码,然后在编译之前将其翻译成C代码?还是我导入为库和写为“ Lua-Code”之间有区别?
答案 0 :(得分:4)
这些说明用于将Lua嵌入到C或C ++程序中。在这种情况下,您需要与Lua的C API交互以在程序中运行Lua脚本。
如果要使用纯Lua编程,则只需要Lua解释器lua
。
Lua脚本在执行之前不会转换为C。
答案 1 :(得分:1)
要提及的另一件事:许多lua库(例如lua-socket
)都是用C编写的,因此您需要编译器才能使用它们。
他们为什么使用C?因为它们具有极端的便携式lua性质,所以它们在纯lua中(例如,与Internet一起工作)做“不可能”的事情。