System.Extended
Delphi
type Extended = { built-in type };
C++
typedef long double Extended; // 10 byte real
Propriétés
Type | Visibilité | Source | Unité | Parent |
---|---|---|---|---|
type typedef |
public | System.pas sysmac.h |
System | System |
Description
Représente une valeur à virgule flottante en haute précision.
System.Extended offre une meilleure précision que les autres types réels, mais il est moins portable. Soyez prudent en utilisant System.Extended si vous créez des fichiers de données à partager sur plusieurs plates-formes. Sachez que :
- Sur les systèmes Windows 32 bits Intel, la taille de System.Extended est de 10 octets.
- Sur les systèmes Windows 64 bits Linux et macOS 64 bits Intel, la taille de System.Extended est de 16 octets.
- Cependant, sur les systèmes Windows 64 bits Intel et sur tous les systèmes ARM, y compris iOS 64 bits, Android 32 bits et 64 bits et macOS 64 bits, le type System.Extended est un alias pour System.Double, dont la taille est seulement de 8 octets. Cette différence peut avoir une incidence sur la précision numérique dans les opérations à virgule flottante. Pour de plus amples informations, voir Considérations Delphi pour les applications multi-périphériques.
Remarque: Les tailles indiquées dépendent de la plate-forme cible sélectionnée.
Le code suivant affiche 10 sur Win32, 8 sur Win64 et 16 sur macOS et Linux.
Writeln(IntToStr(SizeOf(Extended)));