- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
在 C99 规范中它说 remquo:
The remquo functions are intended for implementing argument reductions which can exploit a few low-order bits of the quotient. Note that x may be so large in magnitude relative to y that an exact representation of the quotient is not practical.
在此上下文中什么是“参数缩减”,可以利用商的几个低阶位的示例是什么?
最佳答案
参数缩减意味着将周期函数的参数映射到规范周期(例如,(-π,π] 或类似的)。如果您使用 π/2 作为除数,则商的低位就足够了用于确定三角函数的正确符号等。
然而,不幸的是,remquo
对于实现标准三角参数约简没有用,因为 π
是无理数;以 π 的近似值 为模减少大参数会给您无有效位 的结果,即所有错误。
但是,如果您正在编写定义为 sin(πx) 或类似函数的函数 f(x)
,则周期现在可以精确地表示为 float ,并且 remquo
可以完全满足您的需求,而当 x
较大时,直接调用 sin(2*M_PI*x)
将给出没有有效位的结果(即所有错误)。
关于c - remquo : argument reduction?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11075483/
我读了here remquo 应该返回: If successful, returns the floating-point remainder of the division x/y as defi
这个问题在这里已经有了答案: remquo Results Not Making Sense (2 个答案) 关闭 3 年前。 我试图在 C++ 中找出一个 double 分成另一个 double
std::remquo 函数的目的是什么?什么时候使用它而不是常规 std::remainder 函数的示例是什么? 最佳答案 remquo 在出现在 C++ 之前首先出现在 C99 中,以下是 C9
在 C99 规范中它说 remquo: The remquo functions are intended for implementing argument reductions which can
通过阅读 C 规范,我发现了这个函数: double remquo(double x, double y, int *quo); float remquof(float x, float y, int
在一些内部循环中我有: double x; ... int i = x/h_; double xx = x - i*h_; 认为这可能是更好的方法,我尝试使用 std:
我是一名优秀的程序员,十分优秀!