Sdílet prostřednictvím


div, ldiv, lldiv

Vypočítá podíl a zbytek dvou celých hodnot.

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

Parametry

numer
Čitatel.

denom
Jmenovatel.

Vrácená hodnota

div volána pomocí argumentů typu int vrátí strukturu typu div_t, která obsahuje podíl a zbytek. Návratová hodnota s argumenty typu long je ldiv_ta návratová hodnota s argumenty typu long long je lldiv_t. , div_tldiv_ta lldiv_t typy jsou definovány v <stdlib.h>.

Poznámky

Funkce div vydělí denomnumer a vypočítá podíl a zbytek. Struktura div_t obsahuje podíl, quota zbytek, rem. Znaménko quotientu je stejné jako znaménko matematického podílu. Absolutní hodnota je největší celé číslo, které je menší než absolutní hodnota matematického podílu. Pokud jmenovatel je 0, program se ukončí chybovou zprávou.

Přetížení, která přebírají argumenty div typu long nebo long long jsou k dispozici pouze pro kód jazyka C++. Návratové typy ldiv_t a lldiv_t obsahují členy quot a rem, které mají stejný význam jako členové div_t.

Požadavky

Rutina Požadovaný hlavičkový soubor
div, ldiv, lldiv <stdlib.h>

Další informace o kompatibilitě najdete v tématu Kompatibilita.

Příklad

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

Viz také

Podpora pro matematiku a plovoucí desetinou čárku
imaxdiv