Partager via


remquo, , remquofremquol

Calcule le reste de deux valeurs entières et stocke une valeur entière avec le signe et l’ampleur approximative du quotient dans un paramètre.

Syntaxe

double remquo( double numer, double denom, int* quo );
float remquof( float numer, float denom, int* quo );
long double remquol( long double numer, long double denom, int* quo );
#define remquo(X, Y, INT_PTR) // Requires C11 or higher

float remquo( float numer, float denom, int* quo ); /* C++ only */
long double remquo( long double numer, long double denom, int* quo ); /* C++ only */

Paramètres

numer
Numérateur.

denom
Dénominateur.

quo
Pointeur désignant un entier pour stocker une valeur qui a le signe et la grandeur approximative du quotient.

Valeur retournée

remquo retourne le reste à virgule flottante de x / y. Si la valeur de y est égale à 0,0, remquo retourne un NaN silencieux. Pour plus d’informations sur la représentation d’un NaN silencieux par la printf famille, consultez printf, , . _wprintf_l_printf_lwprintf

Notes

La remquo fonction calcule le reste f à virgule flottante de / y xtelle sorte quenf * = x + y *, où n est un entier, f a le même signe que x, et la valeur absolue de f est inférieure à la valeur absolue de .y

Sachant que C++ autorise la surcharge, vous pouvez appeler des surcharges de remquo qui acceptent et retournent des valeurs float ou long double. Dans un programme C, sauf si vous utilisez la <macro tgmath.h> pour appeler cette fonction, remquo prend toujours deux double arguments et retourne un double.

Si vous utilisez la macro <tgmath.h>remquo(), le type de l’argument détermine la version de la fonction sélectionnée. Pour plus d’informations, consultez les mathématiques génériques de type.

Par défaut, l’état global de cette fonction est limité à l’application. Pour modifier ce comportement, consultez État global dans le CRT.

Spécifications

Fonction En-tête requis (C) En-tête requis (C++)
remquo, , remquofremquol <math.h> <cmath> ou <math.h>
Macro remquo <tgmath.h>

Pour plus d’informations sur la compatibilité, consultez Compatibilité.

Exemple

// crt_remquo.c
// This program displays a floating-point remainder.

#include <math.h>
#include <stdio.h>

int main( void )
{
   double w = -10.0, x = 3.0, z;
   int quo = 0;

   z = remquo(w, x, &quo);
   printf("The remainder of %.2f / %.2f is %f\n", w, x, z);
   printf("Approximate signed quotient is %d\n", quo);
}
The remainder of -10.00 / 3.00 is -1.000000
Approximate signed quotient is -3

Voir aussi

Prise en charge des fonctions mathématiques et à virgule flottante
ldiv, lldiv
imaxdiv
fmod, fmodf
remainder, , remainderfremainderl