man-pages/man3/nan.3

71 lines
1.5 KiB
Groff
Raw Normal View History

2004-11-03 13:51:07 +00:00
.\" Copyright 2002 Walter Harms (walter.harms@informatik.uni-oldenburg.de)
.\" Distributed under GPL
.\" Based on glibc infopages
.\"
.\" Corrections by aeb
.TH NAN 3 2008-08-11 "GNU" "Linux Programmer's Manual"
2004-11-03 13:51:07 +00:00
.SH NAME
nan, nanf, nanl \- return 'Not a Number'
.SH SYNOPSIS
.B #include <math.h>
.sp
.BI "double nan(const char *" tagp );
.br
2004-11-03 13:51:07 +00:00
.BI "float nanf(const char *" tagp );
.br
2004-11-03 13:51:07 +00:00
.BI "long double nanl(const char *" tagp );
.sp
Link with \fI\-lm\fP.
.sp
.in -4n
Feature Test Macro Requirements for glibc (see
.BR feature_test_macros (7)):
.in
.sp
.BR nan (),
.BR nanf (),
.BR nanl ():
_XOPEN_SOURCE\ >=\ 600 || _ISOC99_SOURCE; or
.I cc\ -std=c99
2004-11-03 13:51:07 +00:00
.SH DESCRIPTION
These functions return a representation (determined by
.IR tagp )
of a quiet NaN.
If the implementation does not support
2004-11-03 13:51:07 +00:00
quiet NaNs, these functions return zero.
.LP
The call
.I nan("char-sequence")
2008-07-25 18:44:28 +00:00
is equivalent to:
.nf
strtod("NAN(char-sequence)", NULL);
.fi
.PP
Similarly, calls to
.BR nanf ()
2004-11-03 13:51:07 +00:00
and
.BR nanl ()
2004-11-03 13:51:07 +00:00
are equivalent to analogous calls to
.BR strtof (3)
2004-11-03 13:51:07 +00:00
and
.BR strtold (3).
2004-11-03 13:51:07 +00:00
.PP
The argument
.I tagp
is used in an unspecified manner.
On IEEE 754 systems, there are many representations of NaN, and
2004-11-03 13:51:07 +00:00
.I tagp
selects one.
On other systems it may do nothing.
.SH VERSIONS
These functions first appeared in glibc in version 2.1.
2004-11-03 13:51:07 +00:00
.SH "CONFORMING TO"
2008-07-25 20:21:06 +00:00
C99, POSIX.1-2001.
See also IEC 559 and the appendix with
2004-11-03 13:51:07 +00:00
recommended functions in IEEE 754/IEEE 854.
.SH "SEE ALSO"
.BR isnan (3),
.BR strtod (3),
.BR math_error (7)