fmin, fminf, fminl

来自cppreference.com
< c‎ | numeric‎ | math
 
 
 
常用数学函数
函数
基本运算
remainder(C99)
remquo(C99)
fma(C99)
fmax(C99)
fmin(C99)
fdim(C99)
nan
nanf
nanl
(C99)
(C99)
(C99)
指数函数
exp
exp2(C99)
expm1(C99)
log
log10
log1p(C99)
log2(C99)
幂函数
sqrt
cbrt(C99)
hypot(C99)
pow
三角及双曲函数
sinh
cosh
tanh
asinh(C99)
acosh(C99)
atanh(C99)
误差及伽马函数
erf(C99)
erfc(C99)
lgamma(C99)
tgamma(C99)
临近整数的浮点运算
ceil
floor
round
lround
llround
(C99)
(C99)
(C99)
trunc(C99)
nearbyint(C99)
rint
lrint
llrint
(C99)
(C99)
(C99)
浮点数操作函数
ldexp
scalbn
scalbln
(C99)
(C99)
ilogb(C99)
logb(C99)
分类
fpclassify(C99)
isfinite(C99)
isinf(C99)
isnan(C99)
isnormal(C99)
signbit(C99)
宏常量
 
定义于头文件 <math.h>
float       fminf( float x, float y );
(1) (C99起)
double      fmin( double x, double y );
(2) (C99起)
long double fminl( long double x, long double y );
(3) (C99起)
定义于头文件 <tgmath.h>
#define fmin( x, y )
(4) (C99起)
1-3) 返回两浮点参数的较小者,将NaN当做缺失数据(在NaN和数值之间选择数值)。
4) 通用类型宏:若任一参数拥有long double类型, 则调用fmaxl。否则若任意参数拥有整数类型或double类型,则调用fmax。否则调用fmaxf

目录

[编辑] 参数

x, y - 浮点值

[编辑] 返回值

若成功则返回两浮点值的较小值。结果是准确的,且不依赖任何舍入模式。

[编辑] 错误处理

此函数不受制于指定于math_errhandling中的任何错误条件。

若实现支持IEEE浮点算术(IEC 60559),则

  • 若两参数中的一个是NaN,则返回另一个参数
  • 仅当两参数皆为NaN时,返回NaN

[编辑] 注意

此函数不关心零的符号,即使一些实现会附加地强制若一个参数为+0而另一个参数为-0,则返回-0。

[编辑] 示例

#include <stdio.h>
#include <math.h>
 
int main(void)
{
    printf("fmin(2,1)    = %f\n", fmin(2,1));
    printf("fmin(-Inf,0) = %f\n", fmin(-INFINITY,0));
    printf("fmin(NaN,-1) = %f\n", fmin(NAN,-1));
}

可能的输出:

fmin(2,1)    = 1.000000
fmin(-Inf,0) = -inf
fmin(NaN,-1) = -1.000000

[编辑] 参考

  • C11 standard (ISO/IEC 9899:2011):
  • 7.12.12.3 The fmin functions (p: 258)
  • 7.25 Type-generic math <tgmath.h> (p: 373-375)
  • F.10.9.3 The fmin functions (p: 530)
  • C99 standard (ISO/IEC 9899:1999):
  • 7.12.12.3 The fmin functions (p: 239)
  • 7.22 Type-generic math <tgmath.h> (p: 335-337)
  • F.9.9.3 The fmin functions (p: 466)

[编辑] 参阅

(C99)
检查第一个浮点参数是否小于第二个
(函数) [edit]
(C99)
(C99)
(C99)
确定两个浮点值的较大者
(函数) [edit]
fminC++文档