# SIGNBIT

NAME

SYNOPSIS

DESCRIPTION

RETURN VALUE

ERRORS

ATTRIBUTES

CONFORMING TO

SEE ALSO

COLOPHON

## 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**():

_ISOC99_SOURCE ||
_POSIX_C_SOURCE >= 200112L

## 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

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

## CONFORMING TO

POSIX.1-2001,
POSIX.1-2008, C99. 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 4.15 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/.