System.MulDivInt64

Aus RAD Studio API Documentation
Version vom 21. August 2015, 10:49 Uhr von Roxanac (Diskussion | Beiträge) (1 Version: Imported August 14, 2015 Translation Package. LOC-19905)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

Delphi

function MulDivInt64(AValue, AMul, ADiv: Int64): Int64; overload;
function MulDivInt64(AValue, AMul, ADiv: Int64; out Remainder: Int64): Int64; overload;

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
function public System.pas System System


Beschreibung

Gibt den Wert dieses Ausdrucks zurück: Int64((Int128(AValue) * Int128(AMul)) div Int128(ADiv)).

  • Int128 ist ein Pseudotyp, der einen 128-Bit-Integerwert mit Vorzeichen darstellt.
  • Wenn Sie den optionalen Parameter Remainder angeben, speichert dieser Parameter den Ergebniswert des folgenden Ausdrucks: Int64((Int128(AValue) * Int128(AMul)) mod Int128(ADiv)).

Wenn A * B im Ausdruck A * B div C überläuft, ist das Ergebnis ungültig. Diese Funktion berechnet die Werte in 28-Bit-Integerwerten als Workaround für den potenziellen Überlauf.

Siehe auch