目录搜索
文字
分享

在头文件<math.h>中定义



float fminf(float x,float y);

(1)

(自C99以来)

double fmin(双x,双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,则调用fminl。 否则,如果任何参数具有整数类型或具有类型double,则调用fmin。 否则,调用fminf。

参数

x, y

-

floating point values

返回值

如果成功,则返回两个浮点值中较小的一个。返回的值是精确的,并不取决于任何舍入模式。

错误处理

此函数不受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.000000fmin(-Inf,0) = -inffmin(NaN,-1) = -1.000000

参考

  • C11标准(ISO / IEC 9899:2011):

    • 7.12.12.3 fmin函数(p:258)

    • 7.25类型通用数学<tgmath.h>(p:373-375)

    • F.10.9.3 fmin函数(p:530)

  • C99标准(ISO / IEC 9899:1999):

    • 7.12.12.3 fmin函数(p:239)

    • 7.22类型通用数学<tgmath.h>(p:335-337)

    • F.9.9.3 fmin函数(p:466)

扩展内容

isless (C99)

检查第一个浮点参数是否小于第二个(函数)

fmaxfmaxffmax1(C99)(C99)(C99)

决定两个浮点值中较大的一个(函数)

| fmin的C ++文档 |

上一篇:fminf下一篇:fmod