#define __STDC_WANT_IEC_60559_EXT__ #include <math.h> // <cmath> en C++
int totalordermag( const double *x, const double *y ); // C23 / ISO/IEC 60559
int totalordermagf( const float *x, const float *y ); // C23 / ISO/IEC 60559
int totalordermagl( const long double *x, const long double *y ); // C23 / ISO/IEC 60559
Ces trois fonctions testent la relation d'ordre total sur les magnitudes des valeurs pointées par x et y.
Ces fonctions renvoient une valeur non nulle si la relation d'ordre total sur les magnitudes est vraie, et zéro sinon.
L'exemple suivant montre une utilisation simple de ces fonctions.
1 2 3 4 5 6 7 8 9 10 11 12 |
#define __STDC_WANT_IEC_60559_EXT__ #include <math.h> #include <stdio.h> #include <stdlib.h> int main() { double x = -1.0; double y = 2.0; printf( "totalordermag(&x, &y) == %d ", totalordermag(&x, &y) ); return EXIT_SUCCESS; } |
Il est à noter que la librairie mathématique doit être ajoutée durant l'étape de "link" (édition des liens)
de votre exécutable. Cela se réalise en ajoutant l'option -lm à votre compilateur GCC.
$> gcc -o sample sample.c -lm $> ./sample totalordermag(&x, &y) == 1 $>
Améliorations / Corrections
Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.
Emplacement :
Description des améliorations :