std:: fmax, std:: fmaxf, std:: fmaxl
|
定义于头文件
<cmath>
|
||
| (1) | ||
|
float
fmax
(
float
x,
float
y
)
;
double
fmax
(
double
x,
double
y
)
;
|
(C++23 前) | |
|
constexpr
/*floating-point-type*/
fmax
(
/*floating-point-type*/
x,
|
(C++23 起) | |
|
float
fmaxf
(
float
x,
float
y
)
;
|
(2) |
(C++11 起)
(C++23 起为 constexpr) |
|
long
double
fmaxl
(
long
double
x,
long
double
y
)
;
|
(3) |
(C++11 起)
(C++23 起为 constexpr) |
|
SIMD 重载
(C++26 起)
|
||
|
定义于头文件
<simd>
|
||
|
template
<
class
V0,
class
V1
>
constexpr
/*math-common-simd-t*/
<
V0, V1
>
|
(S) | (C++26 起) |
|
附加重载
(C++11 起)
|
||
|
定义于头文件
<cmath>
|
||
|
template
<
class
Integer
>
double fmax ( Integer x, Integer y ) ; |
(A) | (C++23 起为 constexpr) |
std::fmax
的重载版本作为参数类型。
(since C++23)
|
S)
SIMD 重载对
v_x
和
v_y
执行逐元素的
std::fmax
运算。
|
(since C++26) |
|
A)
为所有整数类型提供了额外的重载,这些类型被视为
double
。
|
(since C++11) |
目录参数
返回值如果成功,返回两个浮点值中的较大者。返回值是精确的,且不依赖于任何舍入模式。 错误处理此函数不受 math_errhandling 中指定的任何错误条件约束。 如果实现支持 IEEE 浮点算术 (IEC 60559),
注释此函数无需区分正负零的符号差异,但某些实现可能额外规定:若一个参数为 + 0 而另一个为 - 0 ,则返回 + 0 。 额外的重载并不需要完全按照 (A) 的形式提供。只需确保对于它们的第一个参数 num1 和第二个参数 num2 满足以下条件:
示例
运行此代码
输出: fmax(2,1) = 2 fmax(-Inf,0) = 0 fmax(NaN,-1) = -1 参见
| |||||||||||||||||||||||||