Share via


div, ldiv, lldiv

Calcule le quotient et le reste de deux valeurs entières.

Syntaxe

div_t div(
   int numer,
   int denom
);
ldiv_t ldiv(
   long numer,
   long denom
);
lldiv_t lldiv(
   long long numer,
   long long denom
);
ldiv_t div(
   long numer,
   long denom
); /* C++ only */
lldiv_t div(
   long long numer,
   long long denom
); /* C++ only */

Paramètres

numer
Numérateur.

denom
Dénominateur.

Valeur retournée

div appelée à l’aide d’arguments de type int retourne une structure de type div_t, qui contient le quotient et le reste. La valeur de retour avec des arguments de type long est ldiv_t, et la valeur de retour avec des arguments de type long long est lldiv_t. Les div_ttypes et lldiv_t les types ldiv_tsont définis dans <stdlib.h>.

Notes

La div fonction divise numer par denom et calcule le quotient et le reste. La structure div_t contient le quotient, quot, et le reste, rem. Le signe du quotient est le même que le signe du quotient mathématique. Sa valeur absolue est le plus grand entier inférieur à la valeur absolue du quotient mathématique. Si le dénominateur est 0, le programme se termine par un message d’erreur.

Les surcharges de div ce type prennent des arguments de type long ou long long sont uniquement disponibles pour le code C++. Les types ldiv_t de retour et lldiv_t contiennent des membres quot et rem, qui ont les mêmes significations que les membres de div_t.

Spécifications

Routine En-tête requis
div, ldiv, lldiv <stdlib.h>

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

Exemple

// crt_div.c
// arguments: 876 13

// This example takes two integers as command-line
// arguments and displays the results of the integer
// division. This program accepts two arguments on the
// command line following the program name, then calls
// div to divide the first argument by the second.
// Finally, it prints the structure members quot and rem.
//

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

int main( int argc, char *argv[] )
{
   int x,y;
   div_t div_result;

   x = atoi( argv[1] );
   y = atoi( argv[2] );

   printf( "x is %d, y is %d\n", x, y );
   div_result = div( x, y );
   printf( "The quotient is %d, and the remainder is %d\n",
           div_result.quot, div_result.rem );
}
x is 876, y is 13
The quotient is 67, and the remainder is 5

Voir aussi

Prise en charge mathématique et à virgule flottante
imaxdiv