用于负零浮点值? 考虑下面的C++代码: double someZero = 0; std::cout << 0 - someZero << '\n'; // prints 0 std::cout << -someZero << std::endl; // prints -0 double someZero=0; 例如,负零在处理复数时有一些用途
在日常使用中,应尽量避免负零 有关“负零”的背景/用途/陷阱信息的一些链接:用于负零浮点值? 考虑下面的C++代码: double someZero = 0; std::cout << 0 - someZero << '\n'; // prints 0 std::cout << -someZero << std::endl; // prints -0 double someZero=0; 例如,负零在处理复数时有一些用途,c++,floating-point,ieee-754,C++,Floating Point,Ieee 754,在日常使用中,应尽量避免负零 有关“负零”的背景/用途/陷阱信息的一些链接: 来自维基百科: 有人声称,IEEE 754中包含有符号零使得在一些关键问题[1]中更容易获得数值精度,特别是在使用复杂的初等函数进行计算[2]时 第一个参考文献是W.Kahan的“复杂初等函数的分支切割或无事生非的符号位”,可供下载 那篇论文中的一个例子是1/(+0)vs1/(-0)。在这里,零的符号产生了巨大的差异,因为第一个表达式等于+inf,第二个表达式等于-inf,我只能看到两个实际用例: 您希望
- 来自维基百科:
有人声称,IEEE 754中包含有符号零使得在一些关键问题[1]中更容易获得数值精度,特别是在使用复杂的初等函数进行计算[2]时
第一个参考文献是W.Kahan的“复杂初等函数的分支切割或无事生非的符号位”,可供下载
那篇论文中的一个例子是
1/(+0)
vs1/(-0)
。在这里,零的符号产生了巨大的差异,因为第一个表达式等于+inf
,第二个表达式等于-inf
,我只能看到两个实际用例:
负符号零与数学分析概念相呼应,即从下方接近0作为单边极限,可以用x表示→ 0−, x→ 0−, 或x→ ↑0“符号”−0”可非正式地用于表示已四舍五入为零的小负数。负零的概念在统计力学和其他学科中也有一些理论应用我正在制作一个测量应用程序,-0对于混合数字(例如分为英尺和英寸)非常有用 假设我们有一个可变的“长度”,我们试图将其分为“英尺”和“英寸” (这是java代码,但对于C++也是如此)
如果长度在-1英尺到0英尺之间,我们希望它对英尺来说是-0,这样我们就知道它是负数。我想知道,如果有三个零:正数、负数和无符号,减去两个负数,或者加上两个符号相反、大小相等的数,得到一个无符号的零,会有帮助吗?被有符号零除应产生无穷大,但被无符号零除应产生NaN。尽管这并不能解释有符号零在编程语言中的用途。
feet = Math.signum(length) * Math.floor(Math.abs(length / 12));
// could also do feet = length>0 ? Math.floor(length / 12) : Math.ceil(length / 12)
inches = Math.abs(length) % 12;