Struktury PDF Drukuj Email
Wpisał doctor   
Niedziela, 21. Styczeń 2007 00:02
Struktury w C++

Strukturę tworzy zbiór zmiennych różnych typów, zapisanych pod wspólną nazwą.
Korzystając ze struktur odwołujemy się do pojedynczej nazwy, podobnie jak do typu zmiennych. Struktura jest więc typem danych, takim jak int czy char.Struktura pozwala pogrupować zmienne do pojedynczego rekordu.
Aby odwołać się do poszczególnego składnika rekordu należy użyć operatora ->. lub .

Każdy element struktury możemy zapisać oddzielnie, możemy też zapisać całą strukturę na raz.
Po słowie struct podajemy nazwę struktury, w nawiasach klamrowych podajemy typy danych występujące w strukturze.



Przykład

Zdefiniujmy strukturę pacjent:

struct pacjent
{
char imie[10];
int wiek;
char opischoroby[50];
bool zdrowy;
char ostatniawizyta[15];
} ;

Składa się ona z 5 odrębnych pól, wypełnijmy ją następującymi danymi:

imie = "Marcin";
wiek = 23;
opischoroby = "Syndrom Sodda";
zdrowy = false;
ostatniawizyta = "13.01.1989";

Zapis każdego rekordu struktury oddzielnie

pacjent X; // deklaracja struktury
X.imie[10] = "raf"; // odwołania do poszczególnych pól
X.wiek = 23;
X.opischoroby[50] = "Syndrom Sodda";
X.zdrowy = false;
X.ostatniawizyta[15] = "13.01.1989";

lub cała struktura na raz

pacjent X = {"raf", 23, "Syndrom Sodda", false, "13.01.1989"};

Odczyt danych ze struktury w ten sam sposób

Label1->Caption = X.opischoroby;
Aby sprawdzic ile bajtów zajmuje typ zmienych pacjent (struktura), należy posłużyć się operatorem sizeof.

int rozmiar = sizeof(pacjent);

Dla powyższej struktury jej rozmiar wynosi:
imie: 4Bx10 (bo 10 znakowa tablica typu chr)
wiek: 4B
opischoroby: 4Bx50
zdrowy: 1B
ostatniawizyta: 4Bx15

= 305B.

Z powyższego zestawienia widać, że Ľle zaprojektowana struktura oprócz niespełniania swojej funkcji będzie dodatkowo marnotrawić miejsce w pamięci RAM urządzenia lub komputera.

Zapis struktur do pliku odbywa się korzystając ze swobodnego dostępu do plików (binarnych).
Stosujemy tę samą metodę, co przy zapisywaniu liczb całkowitych na stałej długości np. 4 bajtów.

W C++ kontynuacją struktur są klasy.
Komentarze
Dodaj nowy Szukaj
+/-
Napisz komentarz
Nick:
E-mail:
 
Strona www:
Tytuł:
UBBCode:
[b] [i] [u] [url] [quote] [code] [img] 
 
 
:angry::0:confused::cheer:B):evil::silly::dry::lol::kiss::D:pinch:
:(:shock::X:side::):P:unsure::woohoo::huh::whistle:;):s
:!::?::idea::arrow:
 
Proszę wpisać kod antyspamowy widoczny na obrazku.

3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."

Ostatnia aktualizacja: Piątek, 10. Lipiec 2009 15:01
 
 

Losowy obraz

COMparam.JPG

Gościmy

Naszą witrynę przegląda teraz 16 gości 




| | | |