问题标签 [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.

0 投票
1 回答
4858 浏览

c++ - unsigned long long VS unsigned long long int

我想知道 unsigned long long 和 unsigned long long int 的主要区别。它们可以互换使用吗?

对于涉及像 9223372036854775807 这样的大十进制数的计算,首选哪一个?谢谢。

0 投票
0 回答
100 浏览

c - C unsigned long long 在数组中的另一个溢出

假设我有一个数组unsigned long long,有没有办法将溢出放在下一个ull?我想要确切的数字,所以不能选择加倍。现在这就是我所拥有的:

0 投票
1 回答
109 浏览

c++ - 如何在 C++ 中生成不同的大随机数/键

在 c++ 中生成非常接近 pow(2, 64)-1 的大随机数。

解释这个问题,假设我们应该生成 n 个随机数,其中大部分都很大,并将它们存储在一个数组中。

0 投票
2 回答
605 浏览

c - 检查 unsigned long long 是否可用

unsigned long long如果该类型在当前构建环境中可用,我如何通过预处理器指令检查?

我试着检查

但是使用 gcc 并且至少没有-std=-compiler 参数进行编译会导致“不可用”(但会起作用)。

是否有更好的宏来检查,以便至少它可以与 C99 标准编译器和没有 GCC 的 GCC 一起使用-std=C99

0 投票
2 回答
3265 浏览

c++ - 我可以使用无符号长长数组吗

我试图在hackerrank上解决这个问题。

给你四个整数:N,S,P,Q。您将使用它们来使用以下伪代码创建序列。

您的任务是计算序列中不同整数的数量。

这是我在 C++ 中的解决方案。大多数时候我遇到分段错误。我知道这应该使用位数组来解决。但想知道为什么这不起作用。

0 投票
1 回答
296 浏览

java - 将 unsigned long 值存储在两个 16 位寄存器中

我想将 unsigned long 值存储在两个 16 位寄存器中。例如,如果我有 long 值(-2,147,483,648 to 2,147,483,647),那么我使用的公式如下:

从寄存器中获取值

但是如何为 unsigned long 哪个值范围来自0 to 4,294,967,295?

0 投票
1 回答
3718 浏览

swift - 如何在 Swift 中从负数变为零

我有Double数据类型,因为我需要浮点数的结果,但如果我的结果是否定的,它会破坏我的所有算法。是否可能存在带浮点的无符号数据类型?

在此处输入图像描述

0 投票
1 回答
1296 浏览

c++ - C++ 在 unsigned long long int 值中的奇怪跳转

我有以下问题,实际上来自我最近参加的编码测试:

问题:

存在一个函数f(n) = a*n + b*n*(floor(log(n)/log(2))) + c*n*n*n

在一个特定的值,让f(n) = k;

给定k, a, b, c,找到n

对于给定的 值k,如果不n存在值,则返回 0。

限制:

这里的逻辑是,由于f(n)对于给定的 a、b 和 c 纯粹是增加的,我可以n通过二进制搜索找到。

我写的代码如下:

然后我用一些测试用例进行了尝试:

然后奇怪的事情发生了。

该代码适用于测试用例n = (unsigned long long)pow(2,63)-1;,正确返回 n 的值。但它没有为n=1000. 我打印了输出并看到以下内容:

在数学上似乎有些不对劲。的值怎么f(1000)大于 的值f(33554432)

所以我在 Python 中尝试了相同的代码,得到了以下值:

所以,价值肯定更大。

问题:

  • 究竟发生了什么?
  • 我该如何解决?

0 投票
0 回答
106 浏览

c - 是否需要 L 和 LL 整数后缀?

来自标准草案 N1256,第 6.4.4.1 节,第 5 条:

整数常量的类型是可以表示其值的对应列表中的第一个。

从表中,似乎没有后缀的八进制和十六进制常量将被分配任何标准整数类型(signed/unsignedint/ long int/的最小合适组合long long int)。对于十进制常量,signed默认情况下只考虑类型。

u为什么/U存在对我来说很有意义;有符号溢出行为充其量与无符号溢出行为不同,最坏的是UB,所以我想可能有必要在复杂的表达式中指定文字的无符号性。

这给我们留下了L/lLL/ll后缀。它们只能用于选择整数文字类型的下限。这在 C99 中有什么实际用途?

0 投票
2 回答
10363 浏览

c - long long int 数的模

嗨,我在 c 中尝试了一个代码,并考虑到以下代码行中的所有变量都是“long long int”,

钱=(钱% 1000000007)+(((2*pow(abs(a[i]-a[j]),k))%1000000007) % 1000000007);

我收到一个错误,指出

error: invalid operands to binary % (have 'double' and 'int') money=(money % 1000000007)+(((2*pow(abs(a[i]-a[j]),k))%1000000007))) % 1000000007); ^

我不明白这种情况下的错误是什么意思,因为我没有使用双精度。我能得到一个简短的解释吗?