std:: fmin, std:: fminf, std:: fminl
|
定义于头文件
<cmath>
|
||
| (1) | ||
|
float
fmin
(
float
x,
float
y
)
;
double
fmin
(
double
x,
double
y
)
;
|
(C++23 前) | |
|
constexpr
/*floating-point-type*/
fmin
(
/*floating-point-type*/
x,
|
(C++23 起) | |
|
float
fminf
(
float
x,
float
y
)
;
|
(2) |
(C++11 起)
(C++23 起为 constexpr) |
|
long
double
fminl
(
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 fmin ( Integer x, Integer y ) ; |
(A) | (C++23 起为 constexpr) |
std::fmin
的重载作为参数类型。
(since C++23)
|
S)
SIMD 重载对
v_x
和
v_y
执行逐元素的
std::fmin
运算。
|
(since C++26) |
|
A)
为所有整数类型提供了额外的重载,这些类型被视为
double
。
|
(since C++11) |
目录 |
参数
| x, y | - | 浮点数或整数值 |
返回值
如果成功,返回两个浮点值中的较小值。返回值是精确的,且不依赖于任何舍入模式。
错误处理
此函数不受 math_errhandling 中指定的任何错误条件约束。
如果实现支持 IEEE 浮点算术 (IEC 60559),
- 如果两个参数中有一个是 NaN,则返回另一个参数的值。
- 仅当两个参数都是 NaN 时,才返回 NaN。
注释
此函数不要求对零的符号敏感,尽管某些实现额外规定:如果一个参数是 + 0 而另一个是 - 0 ,则返回 - 0 。
额外的重载并不需要完全按照 (A) 的形式提供。只需确保对于它们的第一个参数 num1 和第二个参数 num2 满足以下条件:
|
(C++23 前) |
|
若
num1
和
num2
具有算术类型,则
std
::
fmin
(
num1, num2
)
的效果等同于
std
::
fmin
(
static_cast
<
/*common-floating-point-type*/
>
(
num1
)
,
若不存在具有最高等级和子等级的此类浮点类型,则 重载决议 不会从提供的重载中得到可用候选。 |
(C++23 起) |
示例
可能的输出:
fmin(2,1) = 1 fmin(-Inf,0) = -inf fmin(NaN,-1) = -1
参阅
|
(C++11)
|
检查第一个浮点参数是否小于第二个
(函数) |
|
(C++11)
(C++11)
(C++11)
|
两个浮点值的较大者
(函数) |
|
返回给定值中的较小者
(函数模板) |
|
|
返回范围内的最小元素
(函数模板) |
|
|
(C++11)
|
返回两个元素中的较小者和较大者
(函数模板) |
|
(C++11)
|
返回范围内的最小和最大元素
(函数模板) |
|
C 文档
for
fmin
|
|