Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Une « expression de sélection de membre » fait référence aux membres de structures et d’unions. Une telle expression a la valeur et le type du membre sélectionné.
postfix-expression.identifier
postfix-expression->identifier
Cette liste décrit les deux formes des expressions de sélection de membre :
Dans le premier formulaire,
postfix-expressionreprésente une valeur oustructunionun type, etidentifiernomme un membre de la structure ou de l’union spécifiée. La valeur de l’opération est celle d’uneidentifiervaleur l-value sipostfix-expressionelle est une valeur l. Pour plus d’informations, consultez expressions L-Value et R-Value.Dans le deuxième formulaire,
postfix-expressionreprésente un pointeur vers une structure ou une union, etidentifiernomme un membre de la structure ou de l’union spécifiée. La valeur est celle d’uneidentifiervaleur l-value.
Les deux formes d’expressions de sélection de membre ont des effets similaires.
En fait, une expression impliquant l’opérateur de sélection de membre (->) est une version abrégée d’une expression utilisant le point (.) si l’expression avant la période se compose de l’opérateur indirection (*) appliqué à une valeur de pointeur. Par conséquent,
expression->identifier
équivaut à :
(*expression).identifier
lorsqu’il expression s’agit d’une valeur de pointeur.
Exemples
Les exemples suivants font référence à cette déclaration de structure. Pour plus d’informations sur l’opérateur indirection (*) utilisé dans ces exemples, consultez Indirection et Adresse des opérateurs.
struct pair
{
int a;
int b;
struct pair *sp;
} item, list[10];
Une expression de sélection de membre pour la item structure ressemble à ceci :
item.sp = &item;
Dans l’exemple, l’adresse de la item structure est affectée au sp membre de la structure. Cela signifie qu’il item contient un pointeur vers lui-même.
(item.sp)->a = 24;
Dans cet exemple, l’expression item.sp de pointeur est utilisée avec l’opérateur de sélection de membre (->) pour affecter une valeur au membre a.
list[8].b = 12;
Cette instruction montre comment sélectionner un membre de structure individuel à partir d’un tableau de structures.