#include <math.h> // <cmath> en C++
double remquo( double x, double y, int *quo ); // C99
float remquof( float x, float y, int *quo ); // C99
long double remquol( long double x, long double y, int *quo ); // C99
Ces trois fonctions calculent le même reste que remainder et stockent en plus quelques bits du quotient dans un entier.
Ces éléments ont été ajoutés par la version C99 du standard du langage C.
Ces fonctions renvoient le reste flottant et modifient l'entier pointé par quo.
L'exemple suivant montre une utilisation simple de ces fonctions.
1 2 3 4 5 6 7 8 9 10 |
#include <math.h> #include <stdio.h> #include <stdlib.h> int main() { int quotient = 0; double r = remquo(7.0, 3.0, "ient); printf( "reste == %g, quotient == %d\n", r, quotient ); 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. En cas
d'utilisation d'un autre compilateur, je vous renvoie vers la documentation de ce dernier.
$> gcc -o sample sample.c -lm $> ./sample reste == 1, quotient == 2 $>
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 :