isgreater, isgreaterequal, isless, islessequal, islessgreater, isunordered

Menentukan hubungan pengurutan antara dua nilai floating-point.

Sintaks

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 */

Parameter

x, y
Nilai floating-point untuk dibandingkan.

Nilai hasil

Dalam semua perbandingan, tak terbatas pada tanda yang sama dibandingkan dengan sama. Tak terbatas negatif kurang dari nilai terbatas atau tak terbatas positif. Tak terbatas positif lebih besar dari nilai terbatas atau tak terbatas negatif. Nol sama terlepas dari tanda. NaN tidak kurang dari, sama dengan, atau lebih besar dari nilai apa pun, termasuk NaN lain.

Ketika argumen tidak ada yang merupakan NaN, makro isgreaterpengurutan , , isgreaterequal, islessdan islessequal mengembalikan nilai bukan nol jika hubungan pengurutan yang ditentukan antara x dan y menahan true. Makro ini mengembalikan 0 jika salah satu atau kedua argumen adalah NaN atau jika hubungan pengurutan salah. Bentuk fungsi berulah dengan cara yang sama, tetapi kembali true atau false.

islessgreater Makro mengembalikan nilai bukan nol jika keduanya x dan y bukan NaN, dan x kurang dari atau lebih besar dari y. Ini mengembalikan 0 jika salah satu atau kedua argumen adalah NaN, atau jika nilainya sama. Formulir fungsi berulah dengan cara yang sama, tetapi mengembalikan true atau false.

isunordered Makro mengembalikan nilai bukan nol jika x, , yatau keduanya adalah NaN. Jika tidak, ia mengembalikan 0. Formulir fungsi berulah dengan cara yang sama, tetapi mengembalikan true atau false.

Keterangan

Operasi perbandingan ini diimplementasikan sebagai makro saat dikompilasi sebagai C, dan sebagai fungsi templat sebaris saat dikompilasi sebagai C++.

Persyaratan

Function Header yang diperlukan (C) Header yang diperlukan (C++)
isgreater, isgreaterequal, isless,
islessequal, islessgreater, isunordered
<matematika.h> <math.h> atau <cmath>

Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.

Baca juga

Dukungan matematika dan titik mengambang
isfinite, _finite, _finitef
isinf
isnan, _isnan, _isnanf
_fpclass, _fpclassf