NOM
ceil, ceilf, ceil - Plus petit entier supérieur ou égal à x
SYNOPSIS
#include <math.h>
double ceil(double x);
float ceilf(float x);
long double ceill(long double x);
Effectuez l’édition des liens avec l’option -lm.
Exigences de macros de test de fonctionnalités pour la glibc (voir
feature_test_macros(7)) :
ceilf(), ceill(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE>= 600 ||
_ISOC99_SOURCE ; ou cc -std=c99
Ces fonctions renvoient le plus petit nombre entier n’étant pas
inférieur à x.
Par exemple, ceil(0,5) vaut 1.0 et ceil(-0,5) vaut 0,0.
VALEUR RENVOYÉE
Ces fonctions renvoient la partie entière de x par excès.
Si x est un nombre entier, +0, -0, NaN ou une valeur infinie, la valeur
x elle même est renvoyée.
ERREURS
Aucune erreur ne se produit. POSIX.1-2001 documente une série d’erreurs
pour les dépassement, mais consultez la section NOTES.
CONFORMITÉ
C99, POSIX.1-2001. La variante renvoyant un double est également
conforme à SVr4, BSD 4.3 et C89.
NOTES
Les spécifications SUSv2 et POSIX.1-2001 contiennent un passage sur les
débordements (qui peuvent remplir errno avec ERANGE ou déclencher une
exception FE_OVERFLOW). En pratique, aucun débordement ne peut se
produire sur les machines actuelles, ce qui rend inutile cette gestion
d’erreur. Plus précisément, le débordement ne peut se produire que si
la valeur maximale de l’exposant est plus petite que le nombre de bits
de la mantisse. Pour les nombres en virgule flottante 32 bits et
64 bits obéissant à la norme IEEE-754, la valeur maximale de l’exposant
est 128 (respectivement, 1024) et le nombre de bits de la mantisse est
24 (respectivement, 53).
La partie entière renvoyée par ces fonctions peut être trop grande pour
être stockée dans un type entier (int, long, etc.). Pour éviter les
dépassements, qui produiront des résultats indéfinis, une application
devrait vérifier la validité de la valeur renvoyée avec l’intervalle
accepté avant de l’affecter à un type entier.
VOIR AUSSI
floor(3), lrint(3), nearbyint(3), rint(3), round(3), trunc(3)
COLOPHON
Cette page fait partie de la publication 3.23 du projet man-pages
Linux. Une description du projet et des instructions pour signaler des
anomalies peuvent être trouvées à l’adresse
http://www.kernel.org/doc/man-pages/.
TRADUCTION
Cette page de manuel a été traduite et mise à jour par Christophe
Blaess <http://www.blaess.fr/christophe/> entre 1996 et 2003, puis par
Alain Portal <aportal AT univ-montp2 DOT fr> jusqu’en 2006, et mise à
disposition sur http://manpagesfr.free.fr/.
Les mises à jour et corrections de la version présente dans Debian sont
directement gérées par Florentin Duneau <fduneau@gmail.com> et l’équipe
francophone de traduction de Debian.
Veuillez signaler toute erreur de traduction en écrivant à
<debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
paquet manpages-fr.
Vous pouvez toujours avoir accès à la version anglaise de ce document
en utilisant la commande « man -L C <section> <page_de_man> ».
5 août 2008