首页 > 解决方案 > 下面的数字是如何存储在lua中的?

问题描述

我有这个号码:

b = 1.324567890123456789

问题是问它是如何存储在 lua 中的?现在当我输入 print(b) 时,它显示结束数字是

...1235

现在这个问题给了我选择

...12345

或者

...12346

或者列表中没有选项——我只是想知道是否有人可以帮助我解决这个问题?

标签: luanumbersstorenumeric

解决方案


默认情况下,Lua 将实数存储为双精度浮点值。

print调用tostring,它使用 . 将双精度转换为字符串"%.14g"。[1]

string.format("%.17g",b)如果您想要更多小数,请使用。

[1] https://www.lua.org/source/5.3/luaconf.h.html#LUA_NUMBER_FMT


推荐阅读