SIGNBIT(3)

NAME
signbit - test sign of a real floating-point number

SYNOPSIS
#include <math.h>

int signbit(x);

Link with -lm.

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

signbit():
    _XOPEN_SOURCE >= 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L;
    or cc -std=c99

DESCRIPTION
signbit() is a generic macro which can work on all real floating-point types. It returns a nonzero value if the value of x has its sign bit set.

This is not the same as x < 0.0, because IEEE 754 floating point allows zero to be signed. The comparison -0.0 < 0.0 is false, but signbit(-0.0) will return a nonzero value. NaNs and infinities have a sign bit.

RETURN VALUE
The signbit() macro returns nonzero if the sign of x is negative; otherwise it returns zero.

ERRORS
No errors occur.

ATTRIBUTES

  Multithreading (see pthreads(7))
The signbit() macro is thread-safe.

CONFORMING TO
C99, POSIX.1-2001. This function is defined in IEC 559 (and the appendix with recommended functions in IEEE 754/IEEE 854).

SEE ALSO
copysign(3)

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