.- .
确定两个指定数字值的较大值。
语法
double fmax(
double x,
double y
);
float fmax(
float x,
float y
); //C++ only
long double fmax(
long double x,
long double y
); //C++ only
float fmaxf(
float x,
float y
);
long double fmaxl(
long double x,
long double y
);
#define fmax(X, Y) // Requires C11 or higher
参数
x
要比较的第一个值。
y
要比较的第二个 值。
返回值
如果成功,返回较大的 x
或 y
。 返回的值是准确值,并且不依赖于任何形式的舍入。
否则,可能返回以下值之一:
问题 | 返回值 |
---|---|
x = NaN |
y |
y = NaN |
x |
x 和 y = NaN |
NaN |
此函数不使用 _matherr
中指定的错误。
备注
由于 C++ 允许重载,因此你可以调用采用并返回 float
和 long double
类型的 fmax 的重载。 在 C 程序中,除非使用 <tgmath.h> 宏调用此函数,否则 fmax
始终采用并返回双精度值。
如果使用 <tgmath.h>fmax()
宏,则参数的类型将决定选择哪个版本的函数。 有关详细信息,请参阅泛型类型数学。
要求
函数 | C 标头 | C++ 标头 |
---|---|---|
.- . | <math.h> | <cmath> 或 <math.h> |
fmax 宏 |
<tgmath.h> |
有关兼容性的详细信息,请参阅 兼容性。
另请参阅
按字母顺序显示的函数参考
.- .