Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Calcule le quotient et le reste de deux valeurs entières de n’importe quelle taille en une seule opération.
Syntaxe
imaxdiv_t imaxdiv(
intmax_t numer,
intmax_t denom
);
Paramètres
numer
Numérateur.
denom
Dénominateur.
Valeur retournée
imaxdiv, appelé avec des arguments de type intmax_t, retourne une structure de type imaxdiv_t qui comprend le quotient et le reste.
Notes
La fonction imaxdiv divise numer par denom, calculant ainsi le quotient et le reste. La imaxdiv_t structure contient le quotient, intmax_t quotet le reste, intmax_t rem. Le signe du quotient est le même que le signe du quotient mathématique. Sa valeur absolue est le plus grand entier inférieur à la valeur absolue du quotient mathématique. Si le dénominateur est 0, le programme se termine par un message d’erreur.
Spécifications
| Routine | En-tête requis |
|---|---|
imaxdiv |
<inttypes.h> |
Pour plus d’informations sur la compatibilité, consultez Compatibility.
Exemple
// 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);
}
Quand la fonction est générée, puis appelée avec les paramètres de ligne de commande 9460730470000000 8766, le code génère cette sortie :
The call to imaxdiv(9460730470000000, 8766)
results in a quotient of 1079252848505, and a remainder of 5170
Voir aussi
Prise en charge des fonctions mathématiques et à virgule flottante
div
ldiv, lldiv