Compartilhar via


imaxdiv

Calcula o quociente e o restante de dois valores inteiros de qualquer tamanho como uma única operação.

imaxdiv_t imaxdiv( 
   intmax_t numer,
   intmax_t denom 
); 

Parâmetros

  • numer
    O numerador.

  • denom
    O denominador.

Valor de retorno

imaxdiv chamado com argumentos do tipo intmax_t retorna uma estrutura do tipo imaxdiv_t que compreende o quociente e o resto.

Comentários

A função de imaxdiv divide numer por denom e calcula assim o quociente e o restante. A estrutura de imaxdiv_t contém o quociente, intmax_t quot e o restante, intmax_t rem. O sinal do quociente é o mesmo que o do quociente matemático. Seu valor absoluto é o maior número inteiro menor do que o valor absoluto do quociente matemático. Se o denominador é 0, o programa termina com uma mensagem de erro.

Requisitos

Rotina

Cabeçalho necessário

imaxdiv

<inttypes.h>

Para obter informações adicionais sobre compatibilidade, consulte Compatibilidade.

Exemplo

// 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);
}

Quando compilado e então chamado com os parâmetros de linha de comando de 9460730470000000 8766, o código gera essa saída:

  

Equivalência do .NET Framework

Não aplicável. Para chamar a função padrão de C, use PInvoke. Para obter mais informações, consulte Exemplos de invocação de plataforma.

Consulte também

Referência

Suporte de ponto flutuante

div

ldiv, lldiv