System.Pointer

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

type Pointer = ^Pointer;

C++

typedef void*                Pointer;          //

Propriétés

Type Visibilité  Source Unité  Parent
pointer
typedef
public
System.pas
sysmac.h
System System

Description

Adresse d'un octet en mémoire.

Un pointeur void représente l'adresse d'un octet en mémoire. Un tel pointeur ne peut pas être déréférencé, car il n'est pas associé à une information de type. Toutefois, un pointeur void peut être transtypé en un pointeur typé, puis déréférencé.

Les variables déclarées avec le spécificateur register ne sont pas situées dans l'espace d'adressage principal et elles ne peuvent pas être référencées.

Selon la valeur du pointeur, l'opération de déréférencement peut avoir divers effets :

Valeur du pointeur Effet de déférencement
adresse de la donnée Produit la valeur de la donnée.
adresse de la fonction/procédure Génère un appel à une fonction/procédure.
nil/NULL Génère une erreur ou une exception. Voir EAccessViolation.
invalide Résultat non défini. Indique une erreur logicielle. Voir EInvalidPointer.

Opérateurs de référencement/déréférencement de pointeurs :

Delphi C++
Référencer @object &object
Déréférencer object_pointer^ *object_pointer


La taille d'un pointeur dépend du système d'exploitation et/ou du processeur. Sur les plates-formes 32 bits, un pointeur est stocké sur 4 octets en adresse 32 bits. Sur les plates-formes 64 bits, un pointeur est stocké sur 8 octets en adresse 64 bits.

Voir aussi