summaryrefslogtreecommitdiffstats
path: root/man3/signbit.3
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--man3/signbit.380
1 files changed, 80 insertions, 0 deletions
diff --git a/man3/signbit.3 b/man3/signbit.3
new file mode 100644
index 0000000..5dddad6
--- /dev/null
+++ b/man3/signbit.3
@@ -0,0 +1,80 @@
+'\" t
+.\" Copyright 2002 Walter Harms (walter.harms@informatik.uni-oldenburg.de)
+.\" and Copyright 2008, Linux Foundation, written by Michael Kerrisk
+.\" <mtk.manpages@gmail.com>
+.\"
+.\" SPDX-License-Identifier: GPL-1.0-or-later
+.\"
+.\" Based on glibc infopages, copyright Free Software Foundation
+.\"
+.TH signbit 3 2023-07-20 "Linux man-pages 6.05.01"
+.SH NAME
+signbit \- test sign of a real floating-point number
+.SH LIBRARY
+Math library
+.RI ( libm ", " \-lm )
+.SH SYNOPSIS
+.nf
+.B "#include <math.h>"
+.PP
+.BI "int signbit(" x ");"
+.fi
+.PP
+.RS -4
+Feature Test Macro Requirements for glibc (see
+.BR feature_test_macros (7)):
+.RE
+.PP
+.BR signbit ():
+.nf
+ _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
+.fi
+.SH DESCRIPTION
+.BR signbit ()
+is a generic macro which can work on all real floating-point types.
+It returns a nonzero value if the value of
+.I x
+has its sign bit set.
+.PP
+This is not the same as
+.IR "x < 0.0" ,
+because IEEE 754 floating point allows zero to be signed.
+The comparison
+.I \-0.0\~<\~0.0
+is false, but
+.I signbit(\-0.0)
+will return a nonzero value.
+.PP
+NaNs and infinities have a sign bit.
+.SH RETURN VALUE
+The
+.BR signbit ()
+macro returns nonzero if the sign of
+.I x
+is negative; otherwise it returns zero.
+.SH ERRORS
+No errors occur.
+.SH ATTRIBUTES
+For an explanation of the terms used in this section, see
+.BR attributes (7).
+.TS
+allbox;
+lbx lb lb
+l l l.
+Interface Attribute Value
+T{
+.na
+.nh
+.BR signbit ()
+T} Thread safety MT-Safe
+.TE
+.sp 1
+.SH STANDARDS
+C11, POSIX.1-2008.
+.SH HISTORY
+POSIX.1-2001, C99.
+.PP
+This function is defined in IEC 559 (and the appendix with
+recommended functions in IEEE 754/IEEE 854).
+.SH SEE ALSO
+.BR copysign (3)