我一直想知道是否可以通过使用它的地址在 C/C++ 中调用 lua 函数。例如,
function print2(arg)
print("Printed: "..arg)
end
print(print2) -- prints what seems like a 64 bit address.
我对 C 和 lua 语言的内部工作都不是很有经验,如果这完全不可能的话,很抱歉。
不,你不能。三个原因:
function: 0x55664ffe8de0
轻量级 C 函数、C 闭包和 Lua 函数具有不同的内部表示,但都只是打印时的样子。