signbit
(3)test sign of a real floating-point number
#include <math.h> int signbit(x); Feature Test Macro Requirements for glibc (see feature_test_macros(7)): signbit(): _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
LIBRARY
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.