问题标签 [unsigned-long-long-int]
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.
c++ - “unsigned long int”和“unsigned long long int”分配问题
几周前,我第一次使用(我不习惯使用它们)floats,doubles,比较操作数有一些问题。我在尝试为这些类型分配值时也遇到了问题,但我也解决了它......
今天,我在用 C++ 做一个库,我发现了一个错误……嗯……奇怪?还是只是我的愚蠢想法?
这是代码:
}
可能已经创建了ini库,并且比我的要好得多。但是我开始从 C 学习 C++,我想练习一些有趣和有用的东西。我错过了类声明,我不知道是否有必要将它粘贴在这里,但这里是:
经过几次“测试”,我终于发现问题出在“f_size”变量中。为什么?不知道。但是,如果我将它打印到标准输出,它会显示一个非常大的数字。这就是内存分配(使用 malloc)错误以及从文件读取(或使用 memset 初始化)时的后续错误的问题。
非常感谢您的帮助。和链接、参考或解释让我看到我的错误,并继续学习。
谢谢!
PS:我在 Linux Debian“挤压”中使用 g++,amd64。
php - 在 PHP 中使用 long int
我正在尝试,但无法存储大额价值
如何获得期望值?
visual-c++ - 为什么无符号 __int64 和 __int64 的重载不明确
用VS2008,为什么会这样(2010不允许用)。
但这是模棱两可的。
示例错误文本
它只会在“无符号”重载方面变得模棱两可。拥有和“int”版本和“__int64”版本并不模棱两可。
c - 将字符串转换为无符号长的问题
我在将 char 字符串数组转换为 unsigned long 时遇到了一点问题。这是我对 executeCommand() 的输入。
0001000118218;326
这就是我得到的。
收到指令:0001000118218;326
传输代码:1821
传输周期:32
我不明白为什么最后一个数字被删除了......
c++ - 如何在 Windows 上 seekg() 超过 4GB 的文件?
我在 Windows 7、64 位和 NTFS 上。我正在构建一个必须是 32 位的 DLL。我有一个非常简单的例程,我想用 C++ 实现。我正在使用以下方法读取一个大文件:
对于超过 4GB 的文件,我尝试使用 unsigned long long 但它不起作用。我究竟做错了什么?我正在使用 GNU GCC,尝试 MSVC Express 2008/2010 会有用吗?
更新:
我的 GCC 似乎有问题。现在,我正在使用 MSVC 测试您的提案,并且似乎可以正常工作。MSVC 使用 _int64 来表示 streampos/streamoff 对象,稍后我将使用 GCC 进行检查。
c++ - unsigned long long vs unsigned long(可移植性的观点)
我希望能够在我的项目中使用大的正整数(8 个字节),即使 sizeof(unsigned long) 在我的系统中产生 8,我读到在大多数系统中 unsigned long 只有 4 个字节,我决定给 unsigned long很长一段时间,因为它保证至少有 8 个字节。
不过,我使用它的次数越多,我发现它也不是超级便携,例如在某些系统中(取决于编译器)printf 使用 %llu 对其进行格式化,在某些系统中使用 %lld 对其进行格式化。
我的代码只能在 64 位 debian 机器上运行,其中 unsigned long 将是 8 个字节。便携性不是一个大问题。在这种情况下,使用 unsigned long long 而不是 unsigned long 是否有点矫枉过正,使用 unsigned long long 而不是 unsigned long 还有其他好处吗?
c - 打印 unsigned long long int 值类型返回奇怪的结果
printf
使用该函数打印类型值时遇到问题unsigned long long int
我不知道出了什么问题。我在 Windows 7 Professional 64 位上使用 Dev-Cpp 4.9.9.2 和 Visual Studio 2010 Professional(我知道它不是 C 编译器,但无论如何,想尝试一下)。为了显示,我使用%llu
了修饰符(根据How do you printf an unsigned long long int(the format specifier for unsigned long long int)?),但我也尝试了 I64d 没有效果......
首先,我只想打印unsigned long long int
(使用ULONG_MAX
from limits.h
)的最小值和最大值
回报:
unsigned long long int: 18446744069414584320 到 1580552164021 (Dev-Cpp)
unsigned long long int: 18446744069414584320 到 0 (Visual Studio)
然后我尝试使用printf
打印两个零
回报:
unsigned long long int: 0 到 1580552164021 (Dev-Cpp)
unsigned long long int:0 到 0 (Visual Studio)
还尝试了两个ULONG_MAX
值
回报:
unsigned long long int: 18446744073709551615 到 1580552164021 (Dev-Cpp)
unsigned long long int: 18446744073709551615 到 0 (Visual Studio)
为什么它会这样?你能给我解释一下吗?
python - Django ORM 能否以可靠的与后端无关的方式存储无符号 64 位整数(又名 ulong64 或 uint64)?
我看到的所有文档都暗示您可能能够做到这一点,但是没有任何官方 w/r/t ulong64/uint64 字段。有一些现成的选项在这个领域看起来很有希望:
BigIntegerField
...几乎,但已签名;PositiveIntegerField
... 可疑的 32 位外观;和DecimalField
decimal
...根据文档,用 python 类型表示的固定指针——它可能会变成一个类似的迂腐和缓慢的数据库字段,当被删除时,á la DECIMAL 或 NUMERIC PostgreSQL 类型。
...所有这些看起来都可能存储这样的数字。除了没有人会承诺,就像休格兰特描绘的每一个浪漫喜剧角色一样。
我的主要标准是它与 Django 支持的后端一起工作,没有任何if postgresql (...) elif mysql (...)
类型的特殊情况废话。之后,需要速度——这是视觉数据库应用程序中的模型字段,它将索引图像派生数据(例如感知散列和提取的关键点特征),允许按这些图像的内容进行排序和分组.
那么:是否有一个好的 Django 扩展或应用程序可以提供某种PositiveBigIntegerField
适合我的目的?
而且,除此之外:如果有一种简单可靠的方法可以使用 Django 的库存 ORM 来存储无符号的 64 位整数,我想知道。看,我不是二进制高手;我必须在纸上做二进制补码——所以如果你的这个方法涉及一些位移技巧,不要犹豫解释它是什么,即使它让你觉得很明显。提前致谢。