Yolinux.com

nan manpage

Search topic Section


NAN(3)			   Linux Programmer's Manual			NAN(3)



NAME
       nan, nanf, nanl - return 'Not a Number'

SYNOPSIS
       #include <math.h>

       double nan(const char *tagp);
       float nanf(const char *tagp);
       long double nanl(const char *tagp);

       Link with -lm.

   Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

       nan(), nanf(), nanl():
	   _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L

DESCRIPTION
       These functions return a representation (determined by tagp) of a quiet
       NaN.  If the implementation does not support quiet  NaNs,  these	 func-
       tions return zero.

       The call nan("char-sequence") is equivalent to:

	   strtod("NAN(char-sequence)", NULL);

       Similarly, calls to nanf() and nanl() are equivalent to analogous calls
       to strtof(3) and strtold(3).

       The argument tagp is used in an unspecified manner.  On IEEE  754  sys-
       tems,  there are many representations of NaN, and tagp selects one.  On
       other systems it may do nothing.

VERSIONS
       These functions first appeared in glibc in version 2.1.

ATTRIBUTES
       For  an	explanation  of	 the  terms  used   in	 this	section,   see
       attributes(7).

       +----------------------+---------------+----------------+
       |Interface	      | Attribute     | Value	       |
       +----------------------+---------------+----------------+
       |nan(), nanf(), nanl() | Thread safety | MT-Safe locale |
       +----------------------+---------------+----------------+
CONFORMING TO
       C99,  POSIX.1-2001,  POSIX.1-2008.   See	 also IEC 559 and the appendix
       with recommended functions in IEEE 754/IEEE 854.

SEE ALSO
       isnan(3), strtod(3), math_error(7)

COLOPHON
       This page is part of release 4.10 of the Linux  man-pages  project.   A
       description  of	the project, information about reporting bugs, and the
       latest	 version    of	  this	  page,	   can	   be	  found	    at
       https://www.kernel.org/doc/man-pages/.



GNU				  2016-03-15				NAN(3)