div(3)

NOME
div, ldiv, lldiv, imaxdiv - calcula o quociente e o resto de uma divisão de inteiros

BIBLIOTECA
Biblioteca C Padrão (libc, -lc)

SINOPSE
#include <stdlib.h>

div_t div(int numerador, int denominador);
ldiv_t ldiv(long numerador, long denominador);
lldiv_t lldiv(long long numerador, long long denominador);

#include <inttypes.h>

imaxdiv_t imaxdiv(intmax_t numerador, intmax_t denominador);

    Requisitos de macro de teste de recursos para o glibc (consulte feature_test_macros(7)):

lldiv():
    _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L

DESCRIÇÃO
A função div() calcula o valor de numerador/denominador e retorna o quociente e o resto em uma estrutura chamada div_t, que contém dois membros inteiros (na ordem especificada) chamados quot e rem. O quociente é arredondado para zero. O resultado satisfaz quot*denominador+rem = numerador.

As funções ldiv(), lldiv() e imaxdiv() fazem o mesmo, dividindo números do tipo indicado e retornando o resultado em uma estrutura do nome indicado, em todos os casos com campos quot e rem do mesmo tipo como os argumentos da função.

VALOR DE RETORNO
A estrutura div_t (etc.).

ATRIBUTOS
Para uma explicação dos termos usados nesta seção, consulte attributes(7).
Interface | Atributo | Valor
div(), ldiv(), lldiv(), imaxdiv() | Thread safety | MT-Safe

PADRÕES
C11, POSIX.1-2008.

HISTÓRICO
POSIX.1-2001, C89, C99, SVr4, 4.3BSD.

lldiv() e imaxdiv() foram adicionadas em C99.

EXEMPLOS
Após

    div_t q = div(-5, 3);

os valores q.quot e q.rem são -1 e -2, respectivamente.

VEJA TAMBÉM
abs(3), remainder(3)

TRADUÇÃO
A tradução para português brasileiro desta página man foi criada por Paulo César Mendes <drpc@ism.com.br>, André Luiz Fassone <lonely_wolf@ig.com.br> e Rafael Fontenelle <rafaelff@gnome.org>.

Esta tradução é uma documentação livre; leia a Licença Pública Geral GNU Versão 3 (https://www.gnu.org/licenses/gpl-3.0.html) ou posterior para as condições de direitos autorais. Nenhuma responsabilidade é aceita.

Se você encontrar algum erro na tradução desta página de manual, envie um e-mail para a lista de discussão de tradutores (debian-l10n-portuguese@lists.debian.org).