问题标签 [overflow]
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.
java - Java乘法运算行为
我编写了一个将给定数字从天数转换为毫秒数的方法:
我很难弄清楚我做错了什么。现在我的问题是: 这个错误如此明显吗?
修正方法:
如果我在计算之前没有将整数转换为 long,我会得到一个完全错误的结果。
.net - .NET下的缓冲区溢出错误的常见原因
我正在寻找 .NET 下缓冲区溢出错误的常见原因。
我知道在托管的 .NET 代码下缓冲区溢出是不可能的。但是,在 .NET 应用程序范围内仍然可能出现此异常。
我想到的东西——
- COM 对象调用的有效参数
- PInvoke/Win32 调用的有效参数
调试缓冲区溢出错误的最佳方法是什么?
css - CSS 下溢修复
我想知道是否有针对css的下溢修复?最初的问题是溢出,很容易修复,但现在已成为下溢问题。我设置了一个特定的高度值,但它似乎忽略了这一点,而是调整大小以适应内容。
我感谢任何帮助和想法。
谢谢!
asp.net - IE7不自动显示滚动条?
我想知道是否有办法解决我在使用 IE7 时遇到的滚动条问题。
这是我的CSS:
这是HTML:
它在其他浏览器中运行良好,但由于某种原因在 IE7 中无法运行。
为澄清而编辑:
这就是我想要完成的事情:有div
一个固定的width
,height
并且里面有一个gridview
. 如果gridview
的宽度或高度超过 的固定大小div
,我希望滚动条出现在div
.
c# - 为什么这个特定的操作在 C# 中溢出(参见 CS0220)?
我尝试构建一个大的 Int64,其中包含以字节为单位的半字节信息。
以下代码行按预期工作:
为什么下面这行会导致编译错误 CS0220 "The operation overflows at compile time in checked mode" 而其他行不会?
结果将是:
代替:
谁能解释一下?我现在将使用移位运算符进行转换,但仍然很好奇为什么这种方法不起作用!
更新:使用 (Int64)(0x0d << 28) 时也会出现该错误。
overflow - SWAP 期间的堆栈溢出
我们如何在不使用第三个变量的情况下处理两个变量交换期间发生的溢出问题。我相信 XOR 解决方案只能用于整数。其他变量类型呢?
c++ - 当我将它添加到指针时,我可以安全地忽略溢出检查的最小偏移量是多少?
我是否可以期望用户空间程序中的任何“数据”指针与地址 0 和 0xffffffff... 保持安全距离,以便我可以安全地为指针添加一个小偏移量而不检查溢出?当 p 是指向常量字符缓冲区或动态分配字符串的 char 指针(在现代 >= 32 位操作系统上)时,我可以安全地假设 p + n 不会溢出的最大正 n 是多少?
为避免混淆:我说的是溢出检查,而不是边界检查。例如:如果您有一个指针 p 指向具有 m 个字符的字符串的开头,并且您想在正偏移量 i 处访问该字符,那么您需要检查 i < m 或者您可以间接检查 p + i < p + 米。但是,在后一种情况下,您还必须确保 p + i 不会溢出,即您必须确保 p + i >= p。
更新:好的,如果 i > m,p + i 不是有效的标准 C,无论 p + i 是否实际取消引用或是否溢出。但是,我真正感兴趣的问题是是否存在一个小的 n ,而 p + n在实践中不会溢出。回答这个问题显然需要一些关于现代操作系统如何组织地址空间的知识。
更新 2:听到任何一个特定平台已经很有趣了,即使它不是通用的。最好不是一些晦涩难懂的嵌入式。x86 或基于 Power 的 32 位 Win、Linux 和 Mac 将是最有趣的。
c++ - 如果整数溢出, (unsigned int) * (int) 的结果是什么?无符号或整数?
如果整数溢出,结果是(unsigned int) * (int)
什么?unsigned
还是int
?数组索引运算符 ( operator[]
) 对char*
:int
或unsigned int
其他东西采用什么类型?
我正在审计下面的函数,突然出现了这个问题。该函数在第 17 行有一个漏洞。
考虑两者w
和h
都是非常大的无符号整数。第 9 行的乘法有机会通过验证。
int i
现在问题出现在第 17 行。乘以unsigned int w
:如果结果是int
,则乘积可能是负数,导致访问的位置是 before buf
。如果结果为unsigned int
,则乘积将始终为正,从而访问位于 之后的位置buf
。
很难编写代码来证明这一点:int
太大。有人对此有想法吗?
是否有任何文件说明产品的类型?我已经搜索过了,但到目前为止还没有找到任何东西。
我想就漏洞而言,是否(unsigned int) * (int)
产生unsigned int
或int
无关紧要,因为在编译的目标文件中,它们只是字节。无论产品类型如何,以下代码的工作方式都相同:
因此,乘法返回什么类型并不重要。消费者功能是否采用int
或很重要unsigned
。
这里的问题不是功能有多糟糕,或者如何改进功能以使其更好。该功能无疑存在漏洞。问题是关于函数的确切行为,基于标准中规定的行为。
c - 分配给较大宽度整数时的 C 整数溢出行为
如果我在 C 中执行以下代码:
结果它正确打印了“-4000”。但是,我有点困惑:从另一个减去一个更大的无符号整数时不应该有算术溢出吗?这里有什么铸造规则?这个问题似乎有点无聊,所以任何参考都将不胜感激。
javascript - 使用 CSS 样式溢出时如何访问显示在 DIV 中的实际文本:隐藏?
我的页面上有以下内容 DIV,它显示动态文本:
它使用以下 CSS 来截断额外的文本:
如果我将此文本加载到 DIV 中:
“Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Praesent aliquam, justo convallis luctus rutrum, erat nulla balloon diam, at nonummy quam ante ac quam. Maecenas urna purus, 发酵 id, molestie in, commodo porttitor, felis. Nam blandit quam ut "
... CSS 仅导致以下文本显示在 DIV 中:
“Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Praesent aliquam, justo convallis luctus rutrum, erat nulla balloon diam, at nonummy quam ante ac quam. Maecenas urna purus, 发酵 id, molestie in, commodo porttitor, felis. Nam blandit quam ut lacus. Quisque ornare risus quis ligula. Phasellus tristique purus a augue"
这按预期工作。
但是,我想知道是否有某种方法可以使用 JavaScript 访问显示的文本。当我尝试访问innerHTML
DIV 的属性时,它会返回最初加载到 DIV 中的整个文本。
我的最终目标是用省略号(“...”)替换修剪后的内容中的最后一个单词。我想我可以在 JavaScript 中做到这一点,这样它就会显示在所有浏览器中,而不仅仅是 IE,就像 CSS property 一样text-overflow: hidden
。
有任何想法吗?这可能吗?