问题标签 [long-long]

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 回答
191 浏览

使用 istringstream 的后缀变长(C++)

为什么 istringstream 似乎无法完全读取带后缀的数字文字?

这段代码的输出是

这种行为是由语言环境控制的吗?任何人都可以指点我清除有关接受哪些字符串的文档istringstream::operator>>(long long)吗?

0 投票
3 回答
1706 浏览

无符号字符数组转换为 long long

我不确定这是否正确,我已经对其进行了测试,似乎有些字节已关闭......基本上,我有以下内容:

有人介意指出我哪里出错了吗?谢谢你。

0 投票
2 回答
79 浏览

程序无法按预期工作

我这里有个问题。我必须制作一个程序来检查信用卡号是否有效,使用校验和。我应该从第二个到最后一个数字相乘每隔一个数字,然后将乘积相加,然后将未相乘的数字也加到该总和上。除法时结果应为 0。但是,我的程序有问题。当我输入大数字时,值会改变,最后我得到浮点异常(核心转储)。当我输入较小的数字时,有时会起作用,有时会不起作用。请帮帮我。

谢谢您的帮助。请解释这个问题,以便我以后避免它。

0 投票
2 回答
4920 浏览

加速执行无符号长长模运算的循环性能

我需要执行许多操作,unsigned long long通过 16 位模数找到除数的余数:

我怎样才能加速这个循环?

迭代次数不大(32-128),但是这个循环执行得非常频繁,所以它的速度很关键。

0 投票
1 回答
528 浏览

在 PIC 上使用 long long 时的舍入问题

我在 PIC 微控制器上做一些简单的数学运算,用 C 语言运行代码并使用 MPLABX 和 xc16 编译器。这是代码:

打印出“结果”给我 5,471,873,794,048;而它应该给出 5,471,873,547,255。知道是什么导致了这个问题,我该如何纠正它?

谢谢

0 投票
1 回答
1169 浏览

Fast input for long and long long in C?

So i have been using this function for codechef problems for quite some while now as a fast input method for integers.

My question is how this actually works,what is fgetc_unlocked(stdin) (even though its commented) and most importantly how can I optimise it to run for long and long long.

Here is the code:

0 投票
2 回答
780 浏览

将字符串转换为长长

我使用了给出的解决方案

麻烦在C中将字符串转换为long long

在 C 中将字符串转换为 long long。我使用的是 Microsoft Visual Studio 2012。

编译时出现错误

LNK2019:函数 _main 中引用的未解析外部符号 _+atoll。

0 投票
1 回答
99 浏览

从 long long 返回布尔值不同

_flightId在我的应用程序中,我有一个函数,它从最初分配的 long long 值返回一个 bool 0。在调用下面的函数之前的某个时刻,它通常被分配一个值。

问题是有时,即使它被赋予不同的值0,函数也会返回0

例如:

if _flightId=92559101函数将返回1

如果_flightId=92559104函数将返回0.

有人可以解释这种行为吗?

0 投票
0 回答
65 浏览

使用 64 位整数和使用 32 位整数之间的行为不一致

在我编写的一个小程序中使用 64 位整数时,我看到了一些非常奇怪的行为。我的程序执行以下操作...

  1. 创建 2D long long int 数组(X 乘 Y)
  2. 初始化从 0 到 X*Y -1 的所有数组索引值
  3. 将第一行和第一列索引设置为值 1

这是我的程序的代码(numWaysXY_iterative.cc)

在编译和运行代码之后,我得到了这个输出

在多次检查我的逻辑并且没有发现任何错误之后,我决定制作另一个版本的程序,只是用 int 替换“long long int”变量。

这段代码粘贴在下面(debug_numWaysXY_iterative.cc)

只是为了证明我在这两个程序之间所做的唯一区别是将“long long int”变量替换为“int”(并相应地更改 printf 调用),这是两个源文件之间的差异

然而,当这个版本的代码运行时,我得到了我期望的输出!

正如我所展示的,我使用 -m64 标志编译了这两个程序,并且我的笔记本电脑中有一个 i7 处理器,它是一个 64 位处理器。我还尝试了将所有“long long int”实例替换为“long int”的程序版本,以及将所有“long long int”替换为“int64_t”的另一个版本,但我得到的输出不正确也适用于这两个版本。

任何人都知道为什么我在这里看到行为有所不同?

0 投票
1 回答
956 浏览

如何比较 long long 和 double?

(这必须是重复的,但我找不到重复...)
如何正确比较 along longdoubleC++ 中的 a?

将任何一个转换为另一个可能会导致精度损失并可能溢出,所以我不确定该怎么做......