Kurs C
menu C#
Struktury w C |
W języku C jest możliwość tworzenia struktur, czyli takich tablic o różnych typach danych. Struktury są bardzo podobne do obiektów i ułatwiają definiowanie kilku cech dla jednej rzeczy. Aby stworzyć strukturę należy użyć słowa kluczowego struct i podać typy danych dla danej struktury. Dane struktur można uzupełniać tak samo jak tablice, a odczytuje się je za pomocą operatora kropki ".". Poniżej zaprezentowałem jak można zadeklarować strukturę i ją wywołać w funkcji. Jak można zauważyć na powyższym przykładzie trzeba ciągle powtarzać słowo struct, zarówno w definicji jak i deklaracji. Dlatego często spotykamy się z przypisaniem struktury do definicji. W takim przypadku deklaracja struktury jest bardziej intuicyjna. Poniżej zaprezentowałem ten sam przykład używając słowa typedef: Aby zmodyfikować strukturę wewnątrz funkcji należy przekazać adres do struktury, w ten sam sposób jak to pokazałem w artykule o wskaźnikach. Dzieje się tak dlatego, że przy przekazywaniu wartości tworzy się nowa kopia danej struktury, a po zamknięciu funkcji kopia zostaje usuwana i tylko przez wskaźnik można modyfikować dane. Kod modyfikacji zaprezentowałem poniżej: W powyższym kodzie zaprezentowałem zmianę wartości wiek za pomocą funkcji urodziny(). Jak można zauważyć w programie głównym przekazałem adres albinosa za pomocą urodziny(&albinos). W wewnątrz funkcji urodziny wiek został zwiększony o 1 używając takiego zapisu cz->wiek. Ten zapis jest równoważny z (*cz).wiek. Programiści byli zdenerwowani ciągłym pisaniem nawiasów,a bez tych nawiasów wskaźnik pokazywał nie na to co trzeba, dlatego wprowadzili operator "->". |