Udostępnij za pośrednictwem


imaxdiv

Oblicza iloraz i resztę z dwóch wartości całkowitych o dowolnym rozmiarze jako pojedynczą operację.

imaxdiv_t imaxdiv( 
   intmax_t numer,
   intmax_t denom 
); 

Parametry

  • numer
    Licznik.

  • denom
    Mianownik.

Wartość zwracana

Funkcja imaxdiv wywołana z argumentami typu intmax_t zwraca strukturę typu imaxdiv_t, który obejmuje iloraz i resztę.

Uwagi

Funkcja imaxdiv dzieli numer przez denom , a tym samym oblicza iloraz i resztę.Struktura imaxdiv_t zawiera iloraz, intmax_tquot, i resztę, intmax_trem.Iloraz jest tożsamy z ilorazem matematycznych.Wartość bezwzględna jest największą liczbą całkowitą, która jest mniejsza niż wartość bezwzględna ilorazu matematycznego.Jeżeli mianownik wynosi 0, program zakończy działanie z komunikatem o błędzie.

Wymagania

Procedura

Wymagany nagłówek

imaxdiv

<inttypes.h>

Dodatkowe informacje o zgodności – zobacz: Zgodność.

Przykład

// crt_imaxdiv.c
// Build using: cl /W3 /Tc crt_imaxdiv.c
// This example takes two integers as command-line
// arguments and calls imaxdiv to divide the first 
// argument by the second, then displays the results.

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

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

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

   printf("The call to imaxdiv(%lld, %lld)\n", x, y);
   div_result = imaxdiv(x, y);
   printf("results in a quotient of %lld, and a remainder of %lld\n\n",
          div_result.quot, div_result.rem);
}

Po skompilowaniu i następnie wywołaniu za pomocą parametrów wiersza polecenia 9460730470000000 8766, kod generuje te dane wyjściowe:

  

Odpowiednik w programie .NET Framework

Nie dotyczy. Aby wywołać standardową funkcję C, należy użyć PInvoke. Aby uzyskać więcej informacji, zobacz Przykłady wywołań platformy.

Zobacz też

Informacje

Obsługa liczb zmiennoprzecinkowych

div

ldiv, lldiv