signbit(3) 浮動小数点実数の符号 (sign) を調べる

書式

#include <math.h>

int signbit(x);

-lm でリンクする。

glibc 向けの機能検査マクロの要件 (feature_test_macros(7) 参照):

signbit():

_XOPEN_SOURCE >= 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L;
or cc -std=c99

説明

signbit() は、あらゆる種類の浮動小数点実数に対して 適用可能な汎用的なマクロである。 x の値の符号ビットがセットされている場合、非 0 の値を返す。

このマクロは x < 0.0 と全く同じではない。 なぜなら、IEEE 754 の浮動小数点表現では 0 も符号を持つからである。 -0.0 < 0.0 という比較結果は偽 (false) だが、 signbit (-0.0) は 非 0 の値を返す。

NaN と無限大には符号ビットがある。

返り値

signbit() マクロは x の符号が負の場合 0 以外を返し、そうでない場合 0 を返す。

エラー

エラーは発生しない。

属性

マルチスレッディング (pthreads(7) 参照)

signbit() マクロはスレッドセーフである。

準拠

C99, POSIX.1-2001. この関数は IEC 559 で定義されている (また IEEE 754/IEEE 854 では付録で推奨関数として定義されている)。

この文書について

この man ページは Linux man-pages プロジェクトのリリース 3.65 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。