【发布时间】:2016-06-14 02:32:47
【问题描述】:
我正在加载一个要运行多次的 Lua 脚本和另一个充当应该由第一个脚本使用的库的 Lua 脚本。
让 HelloWorldAPI.lua :
function HelloWorld()
return "Hello world"
end
还有 SomeScript.lua:
HelloWorld()
我按以下顺序做事:
L = luaL_newstate();
luaL_openlibs( L );
luaL_loadfile( L, "HelloWorldAPI.lua" );
luaL_loadfile( L, "SomeScript.lua" );
...
lua_pcall( L, 0, 0, 0 )
...
lua_pcall( L, 0, 0, 0 )
...
(为了简单起见,删除了一些代码)
但我收到一条错误消息,提示我在调用 HelloWorld 函数时尝试调用 nil 值。
为什么?
我在执行 lib 脚本时声明的函数应该是全局的,因此在 SomeScript.lua 中可用,对吧?
谢谢。
【问题讨论】:
-
为什么标记为
C?