div, ldiv, lldiv

Calcola il quoziente e il resto di due Integer.

Sintassi

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

Parametri

numer
Numeratore.

denom
Denominatore.

Valore restituito

div chiamato utilizzando argomenti di tipo int restituisce una struttura di tipo div_t, che contiene il quoziente e il resto. Il valore restituito con argomenti di tipo long è ldiv_te il valore restituito con argomenti di tipo long long è lldiv_t. I div_ttipi , ldiv_te lldiv_t sono definiti in <stdlib.h>.

Osservazioni:

La div funzione divide numer per denom e calcola il quoziente e il resto. La struttura div_t contiene il quoziente, quot, e il resto, rem. Il segno del quoziente è uguale al segno del quoziente matematico. Il valore assoluto è il numero intero più grande minore del valore assoluto del quoziente matematico. Se il denominatore è 0, il programma termina con un messaggio di errore.

Gli overload di div che accettano argomenti di tipo long o long long sono disponibili solo per il codice C++. I tipi ldiv_t restituiti e contengono membri quot e remlldiv_t , che hanno gli stessi significati dei membri di div_t.

Requisiti

Ciclo Intestazione obbligatoria
div, ldiv, lldiv <stdlib.h>

Per altre informazioni sulla compatibilità, vedere Compatibility (Compatibilità).

Esempio

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

Vedi anche

Supporto matematico e a virgola mobile
imaxdiv