Lua format.string 无法将浮点数格式化为十进制 (%d) 从 5.3 开始



我最近从Lua 5.2.3升级到5.3.1,但我注意到我所有执行string.format的脚本开始失败,如果它试图使用%d格式化float

local anExampleString = string.format("Sample Number: %d",10.100000001) -- Fails on 5.3.1, works on 5.2.3
local aWorkingString  = string.format("Sample Number: %.0f",10.100000001) -- Works on 5.3.1

这是故意的吗?

在Lua 5.3中,number类型有两个子类型,integerfloat

From string.format

选项AaEefGg都需要一个数字作为参数。选项cdiouXx需要整数

最新更新