90得票5回答
Java Integer compareTo() - 为什么要使用比较而不是减法?

我发现java.lang.Integer的compareTo方法实现如下:public int compareTo(Integer anotherInteger) { int thisVal = this.value; int anotherVal = anotherInteg...

7得票6回答
通常情况下,我如何在C语言中防止整数溢出?

一般来说,在C编程语言中,我该如何避免整数溢出?我的意思是,是否有任何函数可以预防它发生?最后,整数溢出会像缓冲区溢出那样使我被黑客攻击吗?

8得票6回答
强制 PHP 整数溢出

我们有一些整数算术运算,由于历史原因,它必须在PHP上与一些静态类型语言相同。自从我们上次升级PHP以来,整数溢出的行为已经发生了变化。基本上,我们使用以下公式: function f($x1, $x2, $x3, $x4) { return (($x1 + $x2) ^ $x3) +...

79得票14回答
如果32位整数溢出,我们可以使用40位结构体代替64位长整型吗?

如果说一个32位整数溢出了,我们是否可以使用一些40位类型来满足只需要在2的40次方范围内的需求呢?这样,我们每个整数可以节省24(64-40)位,而不是将 int 升级为 long。 如果可以,怎么做呢? 我必须处理数十亿数据,空间是更大的限制因素。

56得票10回答
两个整数的异或运算是否会超出范围?

我一直在研究如何在一个数组中找到孤独的整数算法,并且这是实现:int arr[] = {10, 20, 30, 5, 20, 10, 30}; int LonelyInteger = 0; for(int i=0; i< 7; i++) { LonelyInteger = Lon...

52得票10回答
为什么编程语言默认不会在整数溢出时报错?

在一些现代编程语言中(包括C++、Java和C#),语言允许整数溢出在运行时发生而不引发任何错误条件。 例如,考虑这个(人为制造的)C#方法,它没有考虑到溢出/下溢的可能性。(为了简洁起见,该方法也没有处理指定列表为空引用的情况。) //Returns the sum of the val...

10得票4回答
有没有一段C代码片段可以高效地计算溢出安全加法而不使用编译器内置函数?

这是一个C函数,它将一个int加到另一个上,如果溢出会失败: int safe_add(int *value, int delta) { if (*value >= 0) { if (delta > INT_MAX - *value...

11得票1回答
如何将一个负的i32数加到一个usize变量上?

例如: let mut a : usize = 0xFF; a += -1; // -1 may be from other variable, so there can't be a -= 1; println!("{}", a); 输出结果如下: error[E0277]: th...

47得票5回答
如何检测32位整数的整型溢出?

我知道这个话题已经被问了好几次,但我的问题是关于int类型的32位溢出。例如: 11111111111111111111111111111111 + 00000000000000000000000000000001 = 000000000000000000000000000000...

10得票1回答
一个char值如果被设置成了CHAR_MAX,那么它是否保证会环绕到CHAR_MIN呢?

我的代码:#include <stdio.h> #include <limits.h> int main() { char c = CHAR_MAX; c += 1; printf("CHAR_MIN=%d CHAR_MAX=%d c=%d (...