]> git.ipfire.org Git - thirdparty/man-pages.git/blobdiff - man3/floor.3
fanotify_init.2, fanotify.7: Document FAN_REPORT_TID
[thirdparty/man-pages.git] / man3 / floor.3
index 9b9fefac2edc389e9ab58e4e86337722c1be8225..6c6ff3d87f6e2dcc858d32c33a434407fc3794ec 100644 (file)
@@ -1,5 +1,8 @@
 .\" Copyright 2001 Andries Brouwer <aeb@cwi.nl>.
+.\" and Copyright 2008, Linux Foundation, written by Michael Kerrisk
+.\"     <mtk.manpages@gmail.com>
 .\"
+.\" %%%LICENSE_START(VERBATIM)
 .\" Permission is granted to make and distribute verbatim copies of this
 .\" manual provided the copyright notice and this permission notice are
 .\" preserved on all copies.
 .\"
 .\" Formatted or processed versions of this manual, if unaccompanied by
 .\" the source, must acknowledge the copyright and authors of this work.
+.\" %%%LICENSE_END
 .\"
-.TH FLOOR 3  2001-05-31 "" "Linux Programmer's Manual"
+.TH FLOOR 3  2017-09-15 "" "Linux Programmer's Manual"
 .SH NAME
 floor, floorf, floorl \- largest integral value not greater than argument
 .SH SYNOPSIS
 .nf
 .B #include <math.h>
-.sp
+.PP
 .BI "double floor(double " x );
-.br
 .BI "float floorf(float " x );
-.br
 .BI "long double floorl(long double " x );
 .fi
-.sp
-Link with \-lm.
+.PP
+Link with \fI\-lm\fP.
+.PP
+.in -4n
+Feature Test Macro Requirements for glibc (see
+.BR feature_test_macros (7)):
+.in
+.PP
+.ad l
+.BR floorf (),
+.BR floorl ():
+.RS 4
+_ISOC99_SOURCE || _POSIX_C_SOURCE\ >=\ 200112L
+    || /* Since glibc 2.19: */ _DEFAULT_SOURCE
+    || /* Glibc versions <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
+.RE
+.ad
 .SH DESCRIPTION
-These functions round \fIx\fP down to the nearest integer.
-.SH "RETURN VALUE"
-The rounded integer value.
-If \fIx\fP is integral or infinite,
-\fIx\fP itself is returned.
+These functions return the largest integral value that is not greater than
+.IR x .
+.PP
+For example,
+.IR floor(0.5)
+is 0.0, and
+.IR floor(\-0.5)
+is \-1.0.
+.SH RETURN VALUE
+These functions return the floor of
+.IR x .
+.PP
+If
+.I x
+is integral, +0, \-0, NaN, or an infinity,
+.I x
+itself is returned.
 .SH ERRORS
-No errors other than EDOM and ERANGE can occur.
-If \fIx\fP is NaN, then NaN is returned and
-.I errno
-may be set to EDOM.
+No errors occur.
+POSIX.1-2001 documents a range error for overflows, but see NOTES.
+.SH ATTRIBUTES
+For an explanation of the terms used in this section, see
+.BR attributes (7).
+.TS
+allbox;
+lbw27 lb lb
+l l l.
+Interface      Attribute       Value
+T{
+.BR floor (),
+.BR floorf (),
+.BR floorl ()
+T}     Thread safety   MT-Safe
+.TE
+.SH CONFORMING TO
+C99, POSIX.1-2001, POSIX.1-2008.
+.PP
+The variant returning
+.I double
+also conforms to
+SVr4, 4.3BSD, C89.
 .SH NOTES
 SUSv2 and POSIX.1-2001 contain text about overflow (which might set
 .I errno
-to ERANGE, or raise an exception).
+to
+.BR ERANGE ,
+or raise an
+.B FE_OVERFLOW
+exception).
 In practice, the result cannot overflow on any current machine,
 so this error-handling stuff is just nonsense.
+.\" The POSIX.1-2001 APPLICATION USAGE SECTION discusses this point.
 (More precisely, overflow can happen only when the maximum value
 of the exponent is smaller than the number of mantissa bits.
-For the IEEE-754 standard 32-bit and 64-bit floating point numbers
-the maximum value of the exponent is 128 (resp. 1024), and the number
-of mantissa bits is 24 (resp. 53).)
-.SH "CONFORMING TO"
-The
-.BR floor ()
-function conforms to SVr4, 4.3BSD, C89.
-The other functions are from C99.
-.SH "SEE ALSO"
+For the IEEE-754 standard 32-bit and 64-bit floating-point numbers
+the maximum value of the exponent is 128 (respectively, 1024),
+and the number of mantissa bits is 24 (respectively, 53).)
+.SH SEE ALSO
 .BR ceil (3),
 .BR lrint (3),
 .BR nearbyint (3),