ANSI C 6

ANSI C 6



6 STRUKTURY

X


Obie współrzędne można zadeklarować jako składowe struktury, na przykład tak:

struct point { int x; int y;

Słowo kluczowe struct rozpoczyna deklarację struktury, którą tworzy lista deklaracji zawartych między nawiasami klamrowymi. Po słowie struct może występować opcjonalna nazwa, zwana etykietką struktury (w naszym przykładzie point). Etykietka identyfikuje ten rodzaj struktury i może być później używana jako skrót dla tej częśc: deklaracji, która występuje w nawiasach klamrowych.

O nazwanych zmiennych występujących w strukturze mówi się, że są składowymi struktury. Składowej struktury, etykietce i normalnej zmiennej (tj. nie będącej składową struktury) można nadać tę samą nazwę. Nie ma obawy o konflikt, ponieważ są one zawsze rozróżnialne przez kontekst, w jakim mogą się pojawić. Co więcej, takie same nazwy można nadać składowym różnych struktur, z tym jednak, że do dobrego tonu należy używanie takich samych nazw jedynie dla obiektów ściśle ze sobą związanych.

Deklaracja struct jest definicją typu. Po prawej klamrze kończącej listę składowych struktury może występować lista zmiennych, tak jak po każdym z podstawowych typów. Zatem definicja

struct {...} x, y, z;

odpowiada składniowo definicji

int x, y, z;

w tym sensie, że obie deklarują x, y i z jako zmienne wskazanego typu oraz rezerwuj1! dla nich pamięć.

6.1 PODSTAWOWE WIADOMOŚCI O STRUKTURACH__


Deklaracja struktury, po której nie występuje lista zmiennych, nie pamięci; po prostu opisuje wzorzec lub kształt struktury. Jeżeli jedi wiera etykietkę, to etykietka może być później użyta w definicjach konkretnych „wcieleń” struktury. Na przykład, mając już deklarację struktury point, możemy zdefiniować zmienną pt jako strukturę tego typu:

struct point pt;

Strukturę można zainicjować dopisując na końcu jej definicji listę wartości początkowych jej składowych; każda wartość początkowa musi być wyrażeniem stałym:

struct point maxpt = { 320, 200 };

Automatyczną strukturę można także zainicjować za pomocą przypisania lub wywołania funkcji, która zwraca strukturę właściwego typu.

W wyrażeniach dostęp do składowej określonej struktury umożliwia konstrukcja nazw a-struktury. składowa

Operator składowej struktury . (kropka) wiąże nazwę struktury z nazwą składowej. Aby wypisać współrzędne punktu pt, możemy zatem użyć instrukcji

printf(”%d,%d”, pt.x, pt.y);

a do wyliczenia algebraicznej odległości między punktami pt i (0,0) zastosować znany algorytm

double dist, sqrt(double); /* sqrt: pierwiastek kwadratowy */ dist = sqrt((double)pt.x * pt.x + (double)pt.y * pt.y);

Struktury mogą być zagnieżdżone. Jedną z reprezentacji prostokąta jest para punktów, które wskazują dwa przeciwległe wierzchołki:

_ pt2 pti

---- x

175


Wyszukiwarka

Podobne podstrony:
ANSI C 6 6 STRUKTURY Ogniwo łańcucha jest strukturą zawierającą wskaźniki do nazwy, do zastępujące
9 (1298) ■■r niczne wyznaczają pewne związki, które można by określić jako relacje bilansowe. Na prz
6 gdzie B jest momentem siły, który można wyrazić jako: S= MxB0.    (1.2.9) Wzór na
fi gdzie ? jest momentem siły, który można wyrazić jako: S=K?xff0.    (1.2.9) Wzór na
Zdjęcie1797 ) * » go*goooo6gqob6gqóóog Najmniejsze krople deszczu, określane jako mżawka, opadają na
.262 Możliwość wykorzystania osadu ściekowego jako nawozu organicznego na przykładzie nawozu
Dowód Wszystkie własności pierścienia można sprawdzić korzystając z funkcji /„• Na przykład jeśli
Zdjęcie1797 ) * » go*goooo6gqob6gqóóog Najmniejsze krople deszczu, określane jako mżawka, opadają na
s6 s7 mnunnut 4. Rodzaje zabaw Zabawy dzieci można dzielić według różnych kryteriów. Na przykład D.
Na zmiennych typu łańcuchowego można dokonywać niektórych działań macierzowych, na przykład
Co można odzyskać podczas procesu recyklingu na przykładzie samochodu
osoby, którą krytykujemy. Poprzedni przykład można by więc uzupełnić na przykład tak: Świetnie mi si
Scan 110328 0143 146 8. GRUPY AMBULATORYJNE ranie i wzmacnianie owej struktury, na przykład przez ba
ANSI C 5 6 STRUKTURY-----------— postępowanie polega najpierw na zadeklarowaniu malloc jako funkcj
DSC01038 1024 STRUKTURY INTELIGENTNE W MECI DEFINICJE Strukturę inteligentną można zdefiniować jako:
DSC01038 1024 STRUKTURY INTELIGENTNE W MECI DEFINICJE Strukturę inteligentną można zdefiniować jako:
ANSI C 6 4 FUNKCJE I STRUKTURA PROGRAMU_________._—---- W bibliotece standardowej występuje funkcj

więcej podobnych podstron