- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在将 Lua 数字转换为 off_t
值时,我应该使用 lua_tointeger()
还是 lua_tonumber()
?
我检查了 Lua 本身的源代码,我看到他们的 file:seek函数使用 lua_Number
,而不是 lua_Integer
。
我还看到 luaposix包广泛使用 lua_tonumber()
(或 luaL_checknumber() 等),甚至读取文件描述符(!)。
那 size_t
呢?
我是否应该使用 lua_tonumber()
(和 lua_pushnumber()
)来处理所有整型 C 类型(mode_t、size_t 等)?还是我通常应该使用 lua_tointeger()
并仅在我“感觉”它是一个潜在的大数字时才求助于 lua_tonumber()
?
最佳答案
因为off_t
和size_t
都是整数类型,你应该使用lua_tointeger
。
来自 the source , lua_tointeger
实际获取的数字为lua_Number
, 然后converts it to lua_Integer
.唯一的问题是 lua_Integer
可能太小了,但是因为它是作为 ptrdiff_t
实现的,在实践中通常在 32 位机器上是 32 位的,在 64 位机器上是 64 位的-位机。
关于我可以将 lua_tointeger() 用于 off_t 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19110326/
在将 Lua 数字转换为 off_t 值时,我应该使用 lua_tointeger() 还是 lua_tonumber()? 我检查了 Lua 本身的源代码,我看到他们的 file:seek函数使用
我尝试将字符串从 Lua(5.1.5) 转换为整数,并检查该数字是否为有效整数(0~99999)。但是,我发现 lua_tonumber() 在处理大整数时与 lua_tointeger() 有不同的
我是一名优秀的程序员,十分优秀!