2
最近我試圖在我的C應用程序中嵌入LUA,現在我想要做的是我有一個值(Session_ID),我想從C函數傳遞給LUA腳本,以便LUA腳本可以使用它在C中調用一個函數。如何將全局值從C傳遞給LUA?
我沒有問題在C中加載LUA腳本並運行它(使用lua_pcall),並且我沒有問題以及從LUA內部調用C函數,我當前的問題是傳遞全局變量來回。
例如:
在C側(test.c的):
session_id = 1;
luabc_sz = rlen;
result = lua_load(L, luaByteCodeReader, file, "script", "bt");
if(lua_pcall(L, 0, 0, 0) != 0)
在哪裏的文件是包含LUA腳本(script.lua)陣列。
在Lua的側script.lua):
print "Start"
for i=1,10 do
print(i, **session_id**)
end
print "End"
「打印」是我自己的功能覆蓋,我想考績制度SESSION_ID它。 所以完整的情況是,我有SESSION_ID在C函數,這是我想傳遞給將使用它以後調用它是用C寫
任何幫助與打印功能的LUA腳本那:)?
不需要使用'select'。 – lhf
@ lhf是有點多餘的。固定!謝謝 – greatwolf
我認爲'session_id'應該是(淺)userdata,即使它只是一個int,或者特別是如果它是。 – dualed