MulDiv

Aus API-Wiki
Version vom 5. Mai 2008, 16:54 Uhr von Henrik Ilgen (Diskussion | Beiträge) (Hinzufügen der MSDN als Quelle)

Wechseln zu: Navigation, Suche


Diese Funktion multipliziert zwei 32Bit-Ganzzahlen und dividiert das 64Bit-Ergebnis durch eine dritte 32Bit-Ganzzahl.

Declare Function MulDiv Lib "kernel32" Alias "MulDiv" ( _
                        ByVal nNumber As Long, _
                        ByVal nNumerator As Long, _
                        ByVal nDenominator As Long) As Long


Parameter

nNumber [Übergabe]

Die erste 32Bit-Ganzzahl für die Multiplikation

nNumerator [Übergabe]

Die zweite 32-Bit-Ganzzahl für die Multiplikation

nDenominator

Die 32Bit-Ganzzahl, durch die das Ergebnis dividiert wird.


Rückgabewert(e)

Die MulDiv-Funktion gibt das auf die nächste 32Bit-Ganzzahl gerundete Ergebnis der Rechnung zurück. Wenn ein Überlauf auftritt oder nDenominator 0 ist, gibt die MulDiv-Funktion -1 zurück.


Beispiel

   Dim Result As Long
 
   ' Dieser Aufruf produziert einen Überlauf:
   ' Result = 40000 * 50000 / 60000
 
   ' Dieser hingegen nicht:
   Result = MulDiv(40000, 50000, 60000)

Quelle(n)

MSDN Library - MulDiv API-Guide von AllAPI.net