次の方法で共有


lrintlrintflrintlllrintllrintfllrintl

現在の丸めモードと方向を使用して、指定された浮動小数点値を最も近い整数値に丸めます。

構文

long int lrint(
   double x
);

long int lrint(
   float x
); //C++ only

long int lrint(
   long double x
); //C++ only

long int lrintf(
   float x
);

long int lrintl(
   long double x
);

long long int llrint(
   double x
);

long long int llrint(
   float x
); //C++ only

long long int llrint(
   long double x
); //C++ only

long long int llrintf(
   float x
);

long long int llrintl(
   long double x
);

#define lrint(X) // Requires C11 or higher

パラメーター

x
丸める値。

戻り値

正常に終了した場合、x を丸めた整数値を返します。

問題点 Return
x は戻りの型の範囲外です。

x = ±INF

x = NaN
FE_INVALIDを発生させ、ゼロ (0) を返します。

解説

C++ ではオーバーロードが可能であるため、float型とlong double型を受け取るlrintllrintのオーバーロードを呼び出すことができます。 C プログラムでは、 <tgmath.h> マクロを使用してこの関数を呼び出す場合を除き、 lrintllrint 常に doubleを受け取ります。

<tgmath.h>llrint() マクロを使用する場合は、引数の型によって、この関数のどのバージョンが選択されるかが決定されます。 詳細については、「ジェネリック型数値演算」を参照してください。

xが整数値に相当する浮動小数点を表さない場合、これらの関数はFE_INEXACTを発生させます。

Microsoft 固有: 結果が戻りの型の範囲外の場合、またはパラメーターが非数 (NaN) または無限値 (infinity) の場合、戻り値は実装で定義されます。 Microsoft コンパイラは0 の値を返します。

既定では、この関数のグローバル状態の適用対象は、アプリケーションになります。 この動作を変更するには、「CRT でのグローバル状態」を参照してください。

要件

機能 C ヘッダー C++ ヘッダー
lrintlrintflrintlllrintllrintfllrintl <math.h> <cmath>
lrint マクロ <tgmath.h>

互換性の詳細については、「 Compatibility」を参照してください。

関連項目

関数リファレンス (アルファベット順)