lua5.1中lua_dobuffer
的等价物是什么?
在la 4.0 lua_dobuffer
中声明如下:
int lua_dobuffer (lua_State *L, const char *buff,
size_t size, const char *name);
但是在lua5.1中,我找不到同等的东西。
答案 0 :(得分:1)
luaL_loadbuffer
与lua_dobuffer
具有相同的签名,但它不会运行加载的字符串,只是将其加载到需要随后调用的块中。所以你需要自己处理这一点。
int luaL_loadbuffer (lua_State *L, const char *buff, size_t sz, const char *name);
将缓冲区加载为Lua块。此函数使用lua_load加载大小为
buff
的{{1}}指向的缓冲区中的块。此函数返回与lua_load相同的结果。
sz
是块名称,用于调试信息和错误消息。