isgreater
, isgreaterequal
, isless
, islessequal
, , islessgreater
isunordered
Určuje vztah řazení mezi dvěma hodnotami s plovoucí desetinnou čárkou.
Syntaxe
int isgreater(
/* floating-point */ x,
/* floating-point */ y
); /* C-only macro */
int isgreaterequal(
/* floating-point */ x,
/* floating-point */ y
); /* C-only macro */
int isless(
/* floating-point */ x,
/* floating-point */ y
); /* C-only macro */
int islessequal(
/* floating-point */ x,
/* floating-point */ y
); /* C-only macro */
int islessgreater(
/* floating-point */ x,
/* floating-point */ y
); /* C-only macro */
int isunordered(
/* floating-point */ x,
/* floating-point */ y
); /* C-only macro */
template <class FloatingType1, class FloatingType2>
inline bool isgreater(
FloatingType1 x,
FloatingType2 y
) throw(); /* C++-only template function */
template <class FloatingType1, class FloatingType2>
inline bool isgreaterequal(
FloatingType1 x,
FloatingType2 y
) throw(); /* C++-only template function */
template <class FloatingType1, class FloatingType2>
inline bool isless(
FloatingType1 x,
FloatingType2 y
) throw(); /* C++-only template function */
template <class FloatingType1, class FloatingType2>
inline bool islessequal(
FloatingType1 x,
FloatingType2 y
) throw(); /* C++-only template function */
template <class FloatingType1, class FloatingType2>
inline bool islessgreater(
FloatingType1 x,
FloatingType2 y
) throw(); /* C++-only template function */
template <class FloatingType1, class FloatingType2>
inline bool isunordered(
FloatingType1 x,
FloatingType2 y
) throw(); /* C++-only template function */
Parametry
x
, y
Hodnotysch
Vrácená hodnota
Ve všech porovnáních se infinity stejného znaménka porovnávají jako stejné. Záporné nekonečno je menší než jakákoli konečná hodnota nebo kladné nekonečno. Kladné nekonečno je větší než jakákoli konečná hodnota nebo záporné nekonečno. Nuly jsou stejné bez ohledu na znaménko. Sítě NaN nejsou menší než, rovny nebo větší než jakákoli hodnota, včetně jiné hodnoty NaN.
Pokud ani jeden z argumentů isgreater
není NaN, pořadí maker , isgreaterequal
isless
, a islessequal
vrátí nenulovou hodnotu, pokud zadaný vztah řazení mezi x
a y
obsahuje hodnotu true. Tato makra vrátí hodnotu 0, pokud jsou buď nebo oba argumenty názvy NaN, nebo pokud je relace řazení nepravda. Formuláře funkce se chovají stejným způsobem, ale vrátí true
nebo false
.
Makro islessgreater
vrátí nenulovou hodnotu, pokud x
není hodnota NaN a y
x
je menší nebo větší než y
. Vrátí hodnotu 0, pokud jsou buď nebo oba argumenty nan, nebo pokud jsou hodnoty stejné. Formulář funkce se chová stejným způsobem, ale vrací true
nebo false
.
Makro isunordered
vrátí nenulovou hodnotu, pokud je hodnota x
, y
nebo obě jsou nan. Jinak vrací 0. Formulář funkce se chová stejným způsobem, ale vrací true
nebo false
.
Poznámky
Tyto operace porovnání se implementují jako makra při kompilaci jako C a jako vložené funkce šablony při kompilaci jako C++.
Požadavky
Function | Povinná hlavička (C) | Povinná hlavička (C++) |
---|---|---|
isgreater , isgreaterequal , , isless islessequal , , islessgreater isunordered |
<math.h> | <math.h> nebo <cmath> |
Další informace o kompatibilitě najdete v tématu Kompatibilita.
Viz také
Podpora pro matematiku a plovoucí desetinou čárku
isfinite
, , _finite
_finitef
isinf
isnan
, , _isnan
_isnanf
_fpclass
, _fpclassf