fmax
、 、 fmaxf
fmaxl
決定兩個指定數值的較大者。
語法
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++ 標頭 |
---|---|---|
fmax 、 、 fmaxf fmaxl |
<math.h> | <cmath> 或 <math.h> |
fmax 巨集 |
<tgmath.h> |
如需相容性詳細資訊,請參閱相容性。