Struktury C ++

W tym artykule dowiesz się o strukturach w programowaniu w C ++; co to jest, jak to zdefiniować i używać w swoim programie.

Struktura to zbiór zmiennych o różnych typach danych pod jedną nazwą. Jest podobny do klasy w tym, że obie zawierają zbiór danych różnych typów danych.

Na przykład: Chcesz przechowywać pewne informacje o osobie: jej imię i nazwisko, numer obywatelstwa i wynagrodzenie. Możesz łatwo utworzyć różne zmienne name, citNo, wynagrodzenie, aby przechowywać te informacje oddzielnie.

Jednak w przyszłości chciałbyś przechowywać informacje o wielu osobach. Teraz musisz utworzyć różne zmienne dla każdej informacji na osobę: imię i nazwisko1, numer_citNo1, wynagrodzenie1, imię2, citNo2, wynagrodzenie2

Możesz łatwo wyobrazić sobie, jak duży i niechlujny będzie wyglądał kod. Ponieważ nie istniałby żaden związek między zmiennymi (informacją), będzie to trudne zadanie.

Lepszym podejściem będzie zebranie wszystkich powiązanych informacji pod jednym nazwiskiem Personi wykorzystanie ich dla każdej osoby. Teraz kod wygląda na znacznie bardziej przejrzysty, czytelny i wydajny.

Ten zbiór wszystkich powiązanych informacji pod jedną nazwą Personjest strukturą.

Jak zadeklarować strukturę w programowaniu w C ++?

structKluczowe definiuje typ struktury następnie identyfikator (nazwa struktury).

Następnie wewnątrz nawiasów klamrowych można zadeklarować jeden lub więcej elementów członkowskich (zadeklarować zmienne w nawiasach klamrowych) tej struktury. Na przykład:

 struct Person (imię char (50); int wiek; płaca zmienna;);

Tutaj definiuje się osobę w strukturze, która składa się z trzech członków: nazwiska, wieku i wynagrodzenia.

Podczas tworzenia struktury nie jest przydzielana żadna pamięć.

Definicja struktury jest jedynie planem tworzenia zmiennych. Możesz to sobie wyobrazić jako typ danych. Podczas definiowania liczby całkowitej, jak poniżej:

 int foo;

W intOkreśla, że zmienna foo może posiadać tylko Integer elementu. Podobnie, definicja struktury określa tylko, jaką właściwość posiada zmienna strukturalna, gdy jest zdefiniowana.

Uwaga: pamiętaj, aby zakończyć deklarację średnikiem (;)

Jak zdefiniować zmienną strukturalną?

Po zadeklarowaniu osoby struktury, jak powyżej. Możesz zdefiniować zmienną strukturalną jako:

 Rachunek od osoby;

Tutaj rachunek zmienna struktura jest zdefiniowana co jest typ konstrukcji P erson.

Gdy zdefiniowana jest zmienna strukturalna, tylko wtedy wymagana pamięć jest przydzielana przez kompilator.

Biorąc pod uwagę, że masz system 32-bitowy lub 64-bitowy, pamięć floatwynosi 4 bajty, pamięć int4 bajty, a pamięć char1 bajt.

W związku z tym 58 bajtów pamięci jest alokowanych na rachunek zmiennej strukturalnej.

Jak uzyskać dostęp do członków struktury?

Dostęp do elementów członkowskich zmiennej struktury uzyskuje się za pomocą operatora kropki (.) .

Załóżmy, że chcesz uzyskać dostęp do rachunku wieku zmiennej strukturalnej i przypisać mu 50. Możesz wykonać to zadanie, używając poniższego kodu:

 bill.age = 50;

Przykład: struktura C ++

C ++ Program do przypisywania danych do elementów składowych zmiennej strukturalnej i wyświetlania ich.

 #include using namespace std; struct Person ( char name(50); int age; float salary; ); int main() ( Person p1; cout << "Enter Full name: "; cin.get(p1.name, 50); cout <> p1.age; cout <> p1.salary; cout << "Displaying Information." << endl; cout << "Name: " << p1.name << endl; cout <<"Age: " << p1.age << endl; cout << "Salary: " << p1.salary; return 0; ) 

Wynik

Wpisz Imię i nazwisko: Magdalena Dankova Podaj wiek: 27 Podaj wynagrodzenie: 1024.4 Wyświetlanie informacji. Imię i nazwisko: Magdalena Dankova Wiek: 27 lat Wynagrodzenie: 1024.4

Tutaj zadeklarowana jest struktura Osoba, która ma trzech członków, imię i nazwisko, wiek i wynagrodzenie.

W main()funkcji zdefiniowana jest zmienna strukturalna p1. Następnie użytkownik proszony jest o wprowadzenie informacji i wyświetlane są dane wprowadzone przez użytkownika.

Powinieneś również sprawdzić te samouczki związane ze strukturą:

  • Jak przekazać struktury do funkcji?
  • Jak używać wskaźników ze strukturami?

Interesujące artykuły...