double nextafter(double x, double y);
float nextafterf(float x, float y);
long double nextafterl(long double x, long double y);
double nexttoward(double x, long double y);
float nexttowardf(float x, long double y);
long double nexttowardl(long double x, long double y);
-lm でリンクする。
glibc 向けの機能検査マクロの要件 (feature_test_macros(7) 参照):
All functions shown above: _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 500 || _ISOC99_SOURCE; or cc -std=c99
nexttoward() 関数群は、2 番目の引き数が long double 型である点以外、 nextafter() 関数群と同じはたらきをする。
これらの関数は、結果が浮動小数点の正規化の範囲外になった場合、 オーバーフローまたはアンダーフローをシグナルで通知する。