dwww Home | Manual pages | Find package

nan(3)                      Library Functions Manual                     nan(3)

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

LIBRARY
       Math library (libm, -lm)

SYNOPSIS
       #include <math.h>

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

   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 functions
       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.

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 │
       └─────────────────────────────────────┴───────────────┴────────────────┘

STANDARDS
       C11, POSIX.1-2008.

       See  also  IEC  559  and the appendix with recommended functions in IEEE
       754/IEEE 854.

HISTORY
       glibc 2.1.  C99, POSIX.1-2001.

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

Linux man-pages 6.9.1              2024-05-02                            nan(3)

Generated by dwww version 1.16 on Tue Dec 16 04:02:35 CET 2025.