isgreater
, isgreaterequal
, isless
, , islessequal
, islessgreater
, isunordered
İki kayan nokta değeri arasındaki sıralama ilişkisini belirler.
Sözdizimi
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 */
Parametreler
x
, y
Karşılaştıracak kayan nokta değerleri.
Dönüş değeri
Tüm karşılaştırmalarda, aynı işaretin sonsuzlukları eşit olarak karşılaştırır. Negatif sonsuzluk, herhangi bir sonlu değerden veya pozitif sonsuzdan daha azdır. Pozitif sonsuzluk, herhangi bir sonlu değerden veya negatif sonsuzdan büyüktür. Sıfırlar, işaretlerden bağımsız olarak eşittir. NaN'ler başka bir NaN dahil olmak üzere herhangi bir değerden küçük, buna eşit veya bundan büyük değildir.
Bağımsız değişkenlerden hiçbiri bir NaN olmadığında, ve arasında x
belirtilen sıralama ilişkisi true olarak kalırsa, sıralama makroları isgreater
, isgreaterequal
, isless
ve islessequal
y
sıfır olmayan bir değer döndürür. Bu makrolar, bağımsız değişkenlerden biri veya her ikisi de NaN ise veya sıralama ilişkisi false ise 0 döndürür. İşlev formları aynı şekilde davranır, ancak veya false
döndürürtrue
.
Her islessgreater
ikisi de x
NaN değilse ve y
x
değerinden küçük veya daha y
büyükse makro sıfır olmayan bir değer döndürür. Bağımsız değişkenlerden biri veya her ikisi de NaN ise veya değerler eşitse 0 döndürür. İşlev formu aynı şekilde davranır, ancak veya false
döndürürtrue
.
Makroisunordered
, , y
veya her ikisi de x
NaN ise sıfır olmayan bir değer döndürür. Aksi takdirde 0 döndürür. İşlev formu aynı şekilde davranır, ancak veya false
döndürürtrue
.
Açıklamalar
Bu karşılaştırma işlemleri C olarak derlendiğinde makrolar olarak ve C++ olarak derlendiğinde satır içi şablon işlevleri olarak uygulanır.
Gereksinimler
İşlev | Gerekli üst bilgi (C) | Gerekli üst bilgi (C++) |
---|---|---|
isgreater , isgreaterequal , isless ,islessequal , islessgreater , isunordered |
<math.h> | <math.h> veya <cmath> |
Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.
Ayrıca bkz.
Matematik ve kayan nokta desteği
isfinite
, _finite
, _finitef
isinf
isnan
, _isnan
, _isnanf
_fpclass
, _fpclassf