gpt4 book ai didi

lua - 如何在 Lua 5.3 中保持整数 float

转载 作者:行者123 更新时间:2023-12-04 13:40:47 25 4
gpt4 key购买 nike

print(2^62)
print(2^63)
print(2^64)

在 Lua 5.2 中,所有数字都是 double 数。上面代码的输出是:
4.6116860184274e+18
9.2233720368548e+18
1.844674407371e+19

Lua 5.3 支持整数并在整数和浮点表示之间进行自动转换。相同的代码输出:
4611686018427387904
-9223372036854775808
0

我想得到 float 结果。 2.0^64有效,但如果它不是文字怎么办:
local n = io.read("*n")  --user input 2
print(n^64)

一种可能的解决方案是将数字除以 1 : (n/1)^64因为在 /除法,操作数总是转换为浮点数,但我正在寻找更优雅的解决方案。

Lua 5.3.0 (work2) 上测试.

最佳答案

io.read("*n")总是返回一个浮点数。所以没有惊喜。

如果需要将整数转换为浮点数,请添加 0.0到它。

关于lua - 如何在 Lua 5.3 中保持整数 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22832016/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com