Struktura a členy svazu
"Výběr členů výraz" odkazuje na členy struktur a sdružení.Takový výraz má hodnotu a typ vybraného člena.
postfix-expression . identifier
postfix-expression –> identifier
Seznam popisuje dvě formy výběru členů výrazy:
V prvním formuláři Příponové výraz představuje hodnota struct nebo unie typu, a identifikátor názvy členem určené struktury nebo unie.Hodnotou operace je identifikátor a pokud je hodnotou l Příponové výraz l-hodnota.Viz l hodnota a hodnota výrazy Další informace.
Ve druhém formuláři Příponové výraz představuje ukazatel na strukturu nebo unie, a identifikátor názvy členem určené struktury nebo unie.Hodnota je identifikátor a je l hodnota.
Dvě formy výběru členů výrazy mají podobné účinky.
Ve skutečnosti výraz zahrnující výběr členů operátor (– >) je verze zjednodušený výraz používající období (.) Pokud se skládá z nepřímé odkazování operátor výraz před obdobím (*) použita hodnota ukazatele.Proto
expression –> identifier
je ekvivalentní
(*expression) . identifier
Při výraz je hodnota ukazatele.
Příklady
Následující příklady odkazují na toto prohlášení struktury.Informace o nepřímé odkazování operátor (*) používané v těchto příkladech, viz nepřímé odkazování a operátory z adresy.
struct pair
{
int a;
int b;
struct pair *sp;
} item, list[10];
Výběr členů výraz item struktury vypadá takto:
item.sp = &item;
V příkladu výše, adresa item struktury je přiřazen sp člen struktury.To znamená, že item obsahuje ukazatel na samotném.
(item.sp)–>a = 24;
V tomto příkladu výraz ukazatel item.sp se používá operátor výběr členů (– >) k přiřazení hodnoty členu a.
list[8].b = 12;
Toto prohlášení ukazuje, jak vybrat člena jednotlivé struktury z pole struktur.