MulDiv: Unterschied zwischen den Versionen

Aus API-Wiki
Wechseln zu: Navigation, Suche
(Hinzufügen der MSDN als Quelle)
K (Quelle(n))
Zeile 43: Zeile 43:
 
===Quelle(n)===
 
===Quelle(n)===
  
[http://msdn.microsoft.com/en-us/library/aa383718.aspx MSDN Library - MulDiv]
+
[http://msdn.microsoft.com/en-us/library/aa383718.aspx MSDN Library - MulDiv]<br />
 
[http://allapi.mentalis.org/agnet/apiguide.shtml API-Guide] von AllAPI.net
 
[http://allapi.mentalis.org/agnet/apiguide.shtml API-Guide] von AllAPI.net
  
  
 
[[Kategorie:Mathematik]]
 
[[Kategorie:Mathematik]]

Version vom 5. Mai 2008, 16:55 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ü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