MulDiv: Unterschied zwischen den Versionen
Aus API-Wiki
Zeile 3: | Zeile 3: | ||
Diese Funktion multipliziert zwei 32Bit-Ganzzahlen und dividiert das 64Bit-Ergebnis durch eine dritte 32Bit-Ganzzahl. | Diese Funktion multipliziert zwei 32Bit-Ganzzahlen und dividiert das 64Bit-Ergebnis durch eine dritte 32Bit-Ganzzahl. | ||
− | < | + | <syntaxhighlight lang="vb"> |
Declare Function MulDiv Lib "kernel32" Alias "MulDiv" ( _ | Declare Function MulDiv Lib "kernel32" Alias "MulDiv" ( _ | ||
ByVal nNumber As Long, _ | ByVal nNumber As Long, _ | ||
ByVal nNumerator As Long, _ | ByVal nNumerator As Long, _ | ||
ByVal nDenominator As Long) As Long | ByVal nDenominator As Long) As Long | ||
− | </ | + | </syntaxhighlight> |
Zeile 31: | Zeile 31: | ||
==Beispiel== | ==Beispiel== | ||
− | < | + | <syntaxhighlight lang="vb"> |
Dim Result As Long | Dim Result As Long | ||
Zeile 39: | Zeile 39: | ||
' Dieser hingegen nicht: | ' Dieser hingegen nicht: | ||
Result = MulDiv(40000, 50000, 60000) | Result = MulDiv(40000, 50000, 60000) | ||
− | </ | + | </syntaxhighlight> |
==Quelle(n)== | ==Quelle(n)== |
Aktuelle Version vom 7. Oktober 2016, 21:23 Uhr
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ückgabe
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