问题标签 [int64]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
go - strconv.Itoa64(1234) 在 golang 中给出 undefined
这是我的代码:
问题:
为什么会导致以下错误信息?
命令行参数 .\test.go:7: undefined: strconv.Itoa64 [在 0.2 秒内完成,退出代码为 2]
c++ - 对于可移植代码,我应该使用 long long 还是 int64_t?
我有一个用 C 和 C++ 编写的开源代码库。我正在寻找一种保证至少64 位宽的整数类型,它可以在大多数 OS X(英特尔,64 位)和具有开源 C 和 C++ 编译器的 Linux 机器上可靠地编译,而无需太多最终用户的额外工作。Windows 和 32 位客户端支持此时并不重要。
我在 OS X 上做了一些测试,开发者工具附带的最新 GCC 不支持 C+11 模式(因此似乎不能保证long long
. Clang 也不支持这个,虽然它支持long long
如果 C99 模式启用,在某个版本之后。
当可移植性是一个重要目标时,一般建议使用int64_t
代替吗?long long
使用格式说明符似乎很痛苦。
我可以可靠地将一个int64_t
to long long
(同样与 with 的unsigned
等价物uint64_t
)一起使用以将它与long long
作为参数的现有函数和库一起使用吗?(当然,又回来了。)
在这种情况下,如果我发布的代码需要 Clang 功能而不是 GCC,那么 Clang 会取代 GCC 作为 Linux 上的首选编译器吗?在向最终用户提供源代码时,大多数情况下我可以期待那个编译器吗?
基本上,我想向其他将这两种类型用于可移植 C 和 C++ 代码的开发人员征求一些建议,考虑到上述目标,他们可能会对什么可能是更好的长期方式提出一些建议.
c# - 什么是 php 中的 tinytext,tinytext 和 string 有什么区别?
我在一个用 php 编写的站点上得到了一份调试报告(easydutyplan解析器的调试信息),我看到了
[rowParam] => 数组
(
[0] => BIGINT
[1] => BIGINT
[2] => INT
[3] => TINYTEXT
[4] => TINYTEXT
[5] => TINYTEXT
)
tinytext 和字符串有什么区别?bigint 与 C# 中的 Int64 相同吗?
c - 哪个初始化器适合 int64_t?
我喜欢将我的变量初始化为一些“虚拟”值,并开始使用int64_t
and uint64_t
。到目前为止,看起来至少有三种方法可以将 an 初始化int64_t
为特定值(并且对无符号等效项稍作更改):
我使用 GCC 并以 OS X 和 Linux 为目标。我想选择一种旨在易于移植和清晰的方法——但最重要的是正确性。我是否过度考虑了这一点,或者是否有一种“最佳”或“最推荐”的方法来初始化这个变量类型,对于我抛出的任何特定值(当然是在它的范围内)?
c++ - 随机长长生成器 C++
long long
用密码强度С++生成随机数的解决方案是什么?(允许升压)
javascript - 从 node.js 缓冲区读取 int64 精度损失
将 Int64BE 从 node.js 缓冲区读取到 Number 原语中的最佳方法是什么,例如 readInt32BE 读取 Int32?
我知道我会失去数字 +/- 9'007'199'254'740'992 的精度,但我不会在我想要实现的协议中得到如此高的数字。
c++ - 我应该使用 static_cast 还是 INT64_C 可移植地分配 64 位常量?
将 64 位常量分配为
不可移植,因为long long
不一定int64_t
. 这篇文章哪个初始化程序适合 int64_t?讨论了INT64_C()
宏 from的使用<stdint.h>
,但是否也可以使用static_cast
as
?
我应该更喜欢哪一个,为什么,或者它们都运作良好?
我在互联网和 SO 上进行了搜索,但没有找到任何static_cast
探索该选项的地方。我还进行了测试,sizeof()
以确认它在简单的情况下有效。
c - 为脚本语言选择正确的数据类型
我正在编写一个与“C”非常相似的脚本语言解释器,不同之处在于数字变量的数据类型较少,只有int
(表示 int 数据类型)和real
(显然是实数......)。
解释器是一种“虚拟机”(是的,脚本语言被编译成字节码流),现在我需要决定C
在虚拟机中为脚本语言数字数据类型使用哪种数据类型。现在我打算使用int64_t
for int
s 和long double
for real
s,但是如果您考虑这两个,我想听听您的意见,相当“大”会有任何性能问题,如果我需要它是否会有问题在只有 32 位架构的嵌入式硬件上运行解释器。
assembly - 将 64 位整数加载到双精度 SSE2 寄存器的最佳方法?
xmm
在 32 位模式下在 SSE2 寄存器中加载 64 位整数值的最佳/最快方法是什么?
在 64 位模式下,cvtsi2sd
可以使用,但在 32 位模式下,它只支持 32 位整数。
到目前为止,我还没有发现太多:
- 使用
fild
,fstp
堆叠然后movsd
注册xmm
- 加载高 32 位部分,乘以 2^32,加上低 32 位
第一个解决方案很慢,第二个解决方案可能会引入精度损失(编辑:无论如何它很慢,因为必须将低 32 位转换为无符号......)
有更好的方法吗?
c# - C#将一个补码位转换为一个二进制补码长?
在 C# 中,如何将 64 位补码数(表示为 long 或 ulong)转换为有符号的二进制补码 long?
作为参考,我正在尝试使用BitConverter.DoubleToInt64Bits()
.