Oracle Solaris Studio 12.4 Man Pages

印刷ビューの終了

更新: January 2015
 
 

nint(3M)

名前

aint , aintf , aintl , anint , anintf , anintl , irint , irintf , irintl , nint , nintf , nintl - 浮動小数点形式または整数形式の整数値に丸める

形式

cc [ flag ... ] file ...  -lsunmath -lm [ library ... ]
#include <sunmath.h>
double aint(double x);
float aintf(float x);
long double aintl(long double x);
double anint(double x);
float anintf(float x);
long double anintl(long double x);
int irint(double x);
int irintf(float x);
int irintl(long double x);
int nint(double x);
int nintf(float x);
int nintl(long double x);

説明

これらの関数は、浮動小数点値 xx にもっとも近い整数のいずれかに丸めます。

aint(x) は、絶対値で x 以内のもっとも近い整数に等しい浮動小数点値を返します。x が NaN の場合、aint(x) は NaN を返します。x が無限大または整数の場合、aint(x)x を返します。それ以外の場合は、結果に x と同じ符号が含まれます。aint() は、Fortran 組み込み関数 AINT() と同等です。また、C99 関数 trunc() とも同等です。ただし、aint() では、x が整数でない場合は常に不正確な例外が発生しますが、trunc() では必ずしも発生するとはかぎりません。

anint(x) は、x にもっとも近い整数に等しい浮動小数点数を返します。x が 2 つの整数のちょうど中間にある場合、anint(x) は絶対値で大きい方を返します。x の場合、anint(x) は NaN を返します。x が無限大または整数の場合、anint(x)x を返します。それ以外の場合は、結果に x と同じ符号が含まれます。anint() は、Fortran 組み込み関数 ANINT() と同等です。また、C99 関数 round() とも同等です。ただし、anint() では、x が整数でない場合は常に不正確な例外が発生しますが、round() では必ずしも発生するとはかぎりません。

irint(x) は、現在の丸め方向モードに従って x をもっとも近い整数に丸め、その結果を int に変換します。x が NaN または無限大の場合、またはもっとも近い整数が int 型の範囲を超える場合は、無効な演算例外が発生します。

nint(x) は、x をもっとも近い整数に丸め、その結果を int に変換します。x が 2 つの整数のちょうど中間にある場合、nint(x) は絶対値で大きい方を選択します。x が NaN または無限大の場合、またはもっとも近い整数が int 型の範囲を超える場合は、無効な演算例外が発生します。nint() は、Fortran 組み込み関数 NINT() と同等です。

属性

次の属性については、attributes(5) を参照してください。

属性タイプ
属性値
インタフェースの安定性
確実
MT レベル
MT-安全

関連項目

ceil(3M)、floor(3M)、llrint(3M)、llround(3M)、lrint(3M)、lround(3M)、nearbyint(3M)、rint(3M)、round(3M)、trunc(3M)、attributes(5)