MulDiv 関数 (winbase.h)

2 つの 32 ビット値を乗算し、64 ビットの結果を 3 番目の 32 ビット値で除算します。 最終的な結果は、最も近い整数に丸められます。

構文

int MulDiv(
  [in] int nNumber,
  [in] int nNumerator,
  [in] int nDenominator
);

パラメーター

[in] nNumber

被乗数。

[in] nNumerator

乗数。

[in] nDenominator

乗算演算の結果を除算する数値。

戻り値

関数が成功した場合、戻り値は乗算と除算の結果であり、最も近い整数に丸められます。 結果が正の半整数 (.5 で終わる) の場合、切り上げられます。 結果が負の半分の整数の場合は、切り捨てられます。

オーバーフローが発生したか 、nDenominator が 0 の場合、戻り値は -1 になります。

要件

要件
サポートされている最小のクライアント Windows XP [デスクトップ アプリ | UWP アプリ]
サポートされている最小のサーバー Windows Server 2003 [デスクトップ アプリのみ | UWP アプリ]
対象プラットフォーム Windows
ヘッダー winbase.h (Windows.h を含む)
Library Kernel32.lib
[DLL] Kernel32.dll

関連項目

Int32x32To64

大きい整数

UInt32x32To64