#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():
           _XOPEN_SOURCE >= 600 || _ISOC99_SOURCE ||
           _POSIX_C_SOURCE >= 200112L;
           or cc -std=c99

       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.

       These functions first appeared in glibc in version 2.1.

       For   an   explanation   of   the  terms  used  in  this  section,  see

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

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

       This  page  is  part of release 4.04 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
Man Pages Copyright Respective Owners. Site Copyright (C) 1994 - 2019 Hurricane Electric. All Rights Reserved.