fmax, fmaxf, fmaxl

来自cppreference.com
< c‎ | numeric‎ | math
 
 
 
常用数学函数
函数
基本运算
(C99)
(C99)
(C99)
(C99)(C99)(C99)(C23)
最大/最小运算
fmax
(C99)
(C99)
指数函数
(C23)
(C99)
(C99)
(C23)
(C23)

(C99)
(C99)(C23)
(C23)
(C23)
幂函数
(C99)
(C23)
(C23)

(C99)
(C23)
(C23)
三角及双曲函数
(C23)
(C23)
(C23)
(C23)
(C99)
(C99)
(C99)
浮点数的临近整数
(C99)(C99)(C99)
(C99)

(C99)(C99)(C99)
(C23)(C23)(C23)(C23)
浮点数操作
(C99)(C99)
(C99)(C23)
(C99)
窄化运算
(C23)
(C23)
(C23)
(C23)
(C23)
(C23)
量与量指数函数
十进制重编码函数
全序与载荷函数
分类
(C99)
(C99)
(C99)
(C23)
误差及伽马函数
(C99)
(C99)
(C99)
(C99)
类型
宏常量
特殊浮点数值
(C99)(C23)
参数与返回值
错误处理
快速运算指示
 
在标头 <math.h> 定义
float       fmaxf( float x, float y );
(1) (C99 起)
double      fmax( double x, double y );
(2) (C99 起)
long double fmaxl( long double x, long double y );
(3) (C99 起)
在标头 <tgmath.h> 定义
#define fmax( x, y )
(4) (C99 起)
1-3) 返回二个浮点数实参的较大者,把 NaNs 当做缺失数据(在 NaN 和数值间选择数值)。
4) 泛型宏:若任一参数拥有 long double 类型,则调用 fmaxl。否则,若任一实参拥有整数类型或 double 类型,则调用 fmax。否则调用 fmaxf

目录

[编辑] 参数

x, y - 浮点数

[编辑] 返回值

若成功,则返回二个浮点数的较大者。返回值准确且不依赖任何舍入模式。

[编辑] 错误处理

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

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

  • 若两个实参之一为 NaN,则返回另一实参的值
  • 仅若两个实参均为 NaN,才返回 NaN

[编辑] 注意

不要求此函数对零的符号敏感,尽管某些实现额外强制若一个实参是 +0 而另一个是 -0,则返回 +0。

[编辑] 示例

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

输出:

fmax(2,1)    = 2.000000
fmax(-Inf,0) = 0.000000
fmax(NaN,-1) = -1.000000

[编辑] 引用

  • C23 标准(ISO/IEC 9899:2024):
  • 7.12.12.2 The fmax functions (第 TBD 页)
  • 7.25 Type-generic math <tgmath.h> (第 TBD 页)
  • F.10.9.2 The fmax functions (第 TBD 页)
  • C17 标准(ISO/IEC 9899:2018):
  • 7.12.12.2 The fmax functions (第 188 页)
  • 7.25 Type-generic math <tgmath.h> (第 397 页)
  • F.10.9.2 The fmax functions (第 386 页)
  • C11 标准(ISO/IEC 9899:2011):
  • 7.12.12.2 The fmax functions (第 257-258 页)
  • 7.25 Type-generic math <tgmath.h> (第 373-375 页)
  • F.10.9.2 The fmax functions (第 530 页)
  • C99 标准(ISO/IEC 9899:1999):
  • 7.12.12.2 The fmax functions (第 238-239 页)
  • 7.22 Type-generic math <tgmath.h> (第 335-337 页)
  • F.9.9.2 The fmax functions (第 466 页)

[编辑] 参阅

检查第一个浮点数实参是否大于第二个
(宏函数) [编辑]
(C99)(C99)(C99)
确定两个浮点数的较小者
(函数) [编辑]
fmax 的 C++ 文档