Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Wyrażenie "wybór elementu członkowskiego" odnosi się do składowych struktur i związków. Takie wyrażenie ma wartość i typ wybranego elementu członkowskiego.
postfix-expression.identifier
postfix-expression->identifier
Ta lista zawiera opis dwóch formularzy wyrażeń wyboru składowych:
W pierwszym formularzu
postfix-expressionreprezentuje wartośćstructlubuniontyp iidentifiernazywa element członkowski określonej struktury lub unii. Wartość operacji to wartośćidentifieri jest wartością l, jeślipostfix-expressionjest wartością l.. Aby uzyskać więcej informacji, zobacz Wyrażenia L-Value i R-Value.W drugim formularzu
postfix-expressionreprezentuje wskaźnik do struktury lub unii iidentifiernazywa element członkowski określonej struktury lub unii. Wartość jest wartością typuidentifieri jest wartością l..
Te dwie formy wyrażeń wyboru składowego mają podobne skutki.
W rzeczywistości wyrażenie obejmujące operator wyboru składowego (->) jest skróconą wersją wyrażenia przy użyciu kropki (), jeśli wyrażenie przed okresem składa się z operatora pośredniego (.*) zastosowanego do wartości wskaźnika. Więc
expression->identifier
jest równoważny
(*expression).identifier
gdy expression jest wartością wskaźnika.
Przykłady
Poniższe przykłady odnoszą się do tej deklaracji struktury. Aby uzyskać informacje na temat operatora pośredniego (*) używanego w tych przykładach, zobacz Indirection and Address-of Operators (Operatory pośrednie i adresowe).
struct pair
{
int a;
int b;
struct pair *sp;
} item, list[10];
Wyrażenie wyboru elementu członkowskiego dla item struktury wygląda następująco:
item.sp = &item;
W tym przykładzie adres item struktury jest przypisywany do sp elementu członkowskiego struktury. Oznacza to, że item zawiera wskaźnik do samego siebie.
(item.sp)->a = 24;
W tym przykładzie wyrażenie item.sp wskaźnika jest używane z operatorem wyboru składowego (->) w celu przypisania wartości do elementu członkowskiego a.
list[8].b = 12;
W tej instrukcji pokazano, jak wybrać pojedynczy element członkowski struktury z tablicy struktur.