我一直在尝试将lua嵌入到c应用程序中,但由于编译器抱怨“lua_open”,我使用的是Lua 5.2。 我发现很多文章声称lua_open()在第五版中被替换,但没有一个提到什么。 这是我正在编译的代码
我发现很多文章声称lua_open()在第五版中被替换,但没有一个提到什么。
这是我正在编译的代码
extern "C" {
#include "../lua/lua.h"
#include "../lua/lualib.h"
#include "../lua/lauxlib.h"
}
int main()
{
int s=0;
lua_State *L = lua_open();
// load the libs
luaL_openlibs(L);
luaL_dofile(L,"example.lua");
printf("\nDone!\n");
lua_close(L);
return 0;
}
的确,在
lua 5.2 reference manual中没有提到lua_open功能
lua_State由lua_newstate构建,您可以使用lauxlib.h中的luaL_newstate
获得这个问题的答案的一个更快的方法是研究Lua 5.2源代码(我刚做的)。
