System.MulDivInt64

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

function MulDivInt64(AValue, AMul, ADiv: Int64; [out Remainder: 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