Podobnie jak Union Structure jest również ważną koncepcją w C. Istnieją dwa typy, w których typ danych istnieje w C. Są to prymitywne typy danych i typy danych bez substancji lub zdefiniowane przez użytkownika. Związek jest przykładem niepryminitywnego typu danych.
Jakie są związek i jej główne cechy
Związek to sposób na grupowanie zmiennych. Czasami musimy przechowywać informacje w grupie.
Załóżmy, że musimy przechowywać informacje niektórych uczniów. Informacje oznaczają ich nazwę, adres, mobilne nr, płeć, znaki, agregaty itp. Sytuacja występuje, gdy tylko jeden członek danych tej grupy zmiennych musi zawierać wartość na raz. W tej sytuacji, jeśli przechowujemy te dane do wielu zmiennych dla każdego ucznia, program staje się bardzo złożony i zwiększa szybkość wykonania programu.
Aby zmniejszyć ten problem, wprowadzamy związek. Za pomocą związku możemy grupować te zmienne każdego ucznia w jednej zmiennej i zawierać jedną z tych grup zmiennych jednocześnie.
Union to zbiór odmiennych elementów. Odmienny oznacza, że możemy przechowywać różne wartości typu danych, takie jak int, char, float, string itp.
Jeśli przechowujemy informacje ucznia, musimy przechowywać jego nazwisko, znaki, mobilne nr itp. Nazwa to ciąg, Mark jest float, mobil nr to tablica liczb całkowitych. Jest to więc grupa odmiennych elementów.
Definiowanie Unii oznacza utworzenie nowego typu danych, I wiemy, że tworzenie nowego typu danych oznacza, że używamy tutaj typu danych niepryminitywnych.
Union to określony przez użytkownika typ danych, taki jak struktura. Ale członkowie Unii mają tę samą lokalizację pamięci.
Przykład
Przykład Unii
Jeśli wydrukujemy adres X i Y., Mogą zawierać tę samą lokalizację adresu
W związku mogą istnieć różne typy członków danych. Ale rozmiar Unii jest obliczany według największego członka danych obecnych w Unii.
Przykład programowania 1
#włączaćWyjście
Wyjaśnienie
Tutaj definiujemy związek zwany przedmiotem. Członkami danych tego związku są x, y i z, które są odpowiednio danymi liczb całkowitych, pływakowych i typu. Teraz wewnątrz funkcji main () używamy operatora sizeOF, aby określić rozmiar elementu typu danych. Wyjście 4, ponieważ typ danych pływakowych jest najwyższym typem danych obecnym w Unii jako członek danych.
Jak zdefiniować związek
Przykład związku // definiowanie związku;Zużycie pamięci
Nie jest spożywana pamięć dla definicji Unii. Ponieważ pamięć jest zużywana w momencie deklaracji zmiennej, ale nie w przypadku definiowania typu danych.
Jako definiowanie Unii oznacza utworzenie nowego typu danych, pamięć nie jest konsumowana. Pamięć jest zużywana w momencie deklaracji określonego rodzaju zmiennej.
Struktura vs. Unia
STRUC PIECIA POZYCJA
STRUC PIECIA POZYCJAWyjaśnienie
W strukturze możemy utworzyć lokalizację pamięci dla grupy zmiennych. Cały element danych struktury zawiera pamięć na raz.
Gdzie w związku możemy stworzyć blok pamięci najwyższej pamięci, która istnieje jako zmienna członkowska.
W strukturze tworzymy strukturę, która przyjmuje (2 + 4 + 1) = 7 bajtów. Jako liczba całkowita, float, char, Char bierze odpowiednio 2, 4 i 1-bajtowe.
Gdzie w związku tworzymy związek, który przyjmuje 4 bajty blok pamięci jako zmienna typu pływakowego.
Zalety Unii
Z pomocą związku możemy uzyskać dostęp do dowolnych danych raz na raz. Jeśli chcemy uzyskać dostęp do innej zmiennej członkowskiej, oznacza to, że zmienna lub wartość zmiennej zastępuje poprzednią wartość zmiennej. Oznacza to, że bierze wartość najnowszej zmiennej, która istnieje w związku.
Przykład programowania 2
#włączaćWyjście
Wyjaśnienie
Z wyjścia możemy mieć niewłaściwe postrzeganie, że związek zużywa przestrzeń pamięci (2 + 4 + 1) = 7 bajtów. Ale to niewłaściwe postrzeganie. Ponieważ kiedy używamy zmiennej całkowitej, możemy tego użyć. Następnie używamy zmiennej float; ta zmienna zastępuje wartość x.
Po użyciu wartości Y, jeśli chcemy ponownie wydrukować wartość x, dostaje się wyjście x = 0. Może zużywać pamięć jednej zmiennej na czas najwyższej zmiennej typu danych.
Przykład programowania 3
#włączaćWyjście
Wyjaśnienie
Tutaj definiujemy nazwę Związku Nazwanego. W związku istnieją dwóch członków danych, którzy istnieją. Jednym z nich jest zmienna typu liczb całkowitych x; Kolejnym jest zmienna typu znaku z. Wewnątrz funkcji main () x przypisuje się 65.
Teraz, jeśli wydrukujemy wartość x, to pokazuje wartość 65. Zaskakujące, jeśli wydrukujemy wartość Y, pokazuje to wynik. Ponieważ członkowie danych Unii mają tę samą lokalizację adresu naszej pamięci, a wartość binarna 65 to a.
Wniosek
Podobnie jak Union Structure jest również ważną koncepcją w C. Za pośrednictwem Unii dowiadujemy się, że wielu członków danych lub zmiennych może udostępnić tę samą lokalizację adresu w naszej pamięci. Jest to więc unikalna funkcja związku.