summaryrefslogtreecommitdiffstats
path: root/man3/INFINITY.3
diff options
context:
space:
mode:
Diffstat (limited to 'man3/INFINITY.3')
-rw-r--r--man3/INFINITY.377
1 files changed, 77 insertions, 0 deletions
diff --git a/man3/INFINITY.3 b/man3/INFINITY.3
new file mode 100644
index 000000000..84a8b7601
--- /dev/null
+++ b/man3/INFINITY.3
@@ -0,0 +1,77 @@
+.\" Copyright 2004 Andries Brouwer <aeb@cwi.nl>.
+.\"
+.\" 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.
+.\"
+.\" Permission is granted to copy and distribute modified versions of this
+.\" manual under the conditions for verbatim copying, provided that the
+.\" entire resulting derived work is distributed under the terms of a
+.\" permission notice identical to this one.
+.\"
+.\" Since the Linux kernel and libraries are constantly changing, this
+.\" manual page may be incorrect or out-of-date. The author(s) assume no
+.\" responsibility for errors or omissions, or for damages resulting from
+.\" the use of the information contained herein. The author(s) may not
+.\" have taken the same level of care in the production of this manual,
+.\" which is licensed free of charge, as they might when working
+.\" professionally.
+.\"
+.\" Formatted or processed versions of this manual, if unaccompanied by
+.\" the source, must acknowledge the copyright and authors of this work.
+.\"
+.TH INFINITY 3 2004-10-31 "" "Linux Programmer's Manual"
+.SH NAME
+INFINITY, NAN, HUGE_VAL, HUGE_VALF, HUGE_VALL - floating point constants
+.SH SYNOPSIS
+.nf
+#define _ISOC99_SOURCE
+.br
+.B #include <math.h>
+.sp
+.B INFINITY
+.sp
+.B NAN
+.sp
+.B HUGE_VAL
+.br
+.B HUGE_VALF
+.br
+.B HUGE_VALL
+.fi
+.SH DESCRIPTION
+The macro
+.B INFINITY
+expands to a float constant representing positive infinity.
+
+The macro
+.B NAN
+expands to a float constant representing a quiet NaN
+(when supported). A
+.I quiet
+NaN is a NaN ("not-a-number") that does not raise exceptions
+when it is used in arithmetic. The opposite is a
+.I signalling
+NaN. See IEC 60559:1989.
+
+The macros
+.BR HUGE_VAL ,
+.BR HUGE_VALF ,
+.BR HUGE_VALL
+expand to constants of types double, float and long double, respectively,
+that represent a large positive value, possibly plus infinity.
+
+.SH AVAILABILITY
+On a glibc system, the macro HUGE_VAL is always available.
+Availability of the NAN macro can be tested using
+.BR "#ifdef NAN" ,
+and similarly for INFINITY, HUGE_VALF, HUGE_VALL.
+They will be defined by
+.I <math.h>
+if _ISOC99_SOURCE or _GNU_SOURCE is defined, or __STDC_VERSION__ is defined
+and has a value not less than 199901L.
+
+.SH "CONFORMING TO"
+C99
+.SH "SEE ALSO"
+.BR fpclassify (3)