LUA中遇到这个错误attempt to call a nil value (global 'loadstring')

f = loadstring("i = i + 1")
i = 0
f(); print(i)
f(); print(i)

因为loadstring在lua5.2中已经被弃用了,这个代码可以正常使用

load( "print( 'test' )" )( )

https://github.com/gameplay3d/GamePlay/issues/1022


下面的代码可以在lua 5.1中使用,一定要输入一个数字

--print("loadstring type:" .. type(loadstring))
--io.input("foo.lua")
local l = io.read()
local f = assert(loadstring('return "' .. l .. '"'))

print(type(f))
print(type(f()))
print(f())
for i=1,20 do
	x = i
	print(string.rep("*", f()))
end


你可能感兴趣的:(lua)