Operator strzałek w c

Operator strzałek w c
„Korzystanie z operatora strzałek jest bardzo powszechne we wszystkich językach programowania, e.G., C, C ++ itp. Operator strzałek służy do wskazania adresu pamięci różnych członków związku lub struktury. Operator ten jest symbolicznie wykonany przez połączenie symbolicznej reprezentacji „większej niż (>)” i „operatora odejmowania (-)”. Więc jako całość ten operator wygląda jak strzałka, e.G., ” ->”. Używamy tego operatora ze zmienną wskaźnika, abyśmy mogli uzyskać dostęp do elementu struktury i zmodyfikować jego wartości, które są już przechowywane w pamięci zgodnie z naszymi wymaganiami. Używany jest operator strzałek wraz ze zmienną wskaźnika, ponieważ zapewnia szybki dostęp do elementów (ulepszone wykonanie) i wymaga mniejszej pamięci."

Procedura

W tym artykule postaramy się dowiedzieć, czym jest operator strzałek, jaki składnia jest używana dla tego operatora i dlaczego używamy tego operatora. Ponieważ operator strzałek wskazuje na adres pamięci dowolnej zmiennej lub elementu struktury/unii, który zdefiniowaliśmy w naszym kodzie, więc omówimy również implementację zmiennej wskaźnika z operatorem strzałek, wdrażając różne przykłady w Visual Studio (C).

Składnia

Składnia operatora strzałek jest tak prosta, jak wielu innych operatorów w różnych językach programowania. Używamy tego operatora pomiędzy zmienną wskaźnika a elementem, którego musimy uzyskać w następujący sposób:

(Pointer_variable) -> (element/ zmienna do dostępu)

Przykład nr 01

Jak już omówiliśmy we wprowadzeniu tego artykułu, używamy operatora strzałek, aby uzyskać dostęp do członków lub elementów w strukturze lub Unii. Tutaj w pierwszym przykładzie chcielibyśmy użyć operatora strzałek dla zmiennej wskaźnika, aby uzyskać dostęp do członków struktury. Aby wdrożyć ten przykład, najpierw musimy zdefiniować strukturę w kodzie, ale wcześniej będziemy musieli zaimportować daną bibliotekę ”:

$ # obejmują

Możemy nazwać tę bibliotekę, aby był plik nagłówka dla C w studio Visual. Ten plik nagłówka zawiera wszystkie informacje do wdrożenia kodu w C. Ta biblioteka pozwala nam zawierać informacje związane z drukowaniem wyjścia, skanowanie wyjścia i uzyskanie danych wejściowych od użytkownika.

Wracając do przykładu, skonstruujemy strukturę za pomocą struktury o nazwie; Załóżmy „restaurację”. Struktura jest używana w C do zdefiniowania deklaracji typu danych z listy zawierającej grupę zmiennych, do których dostęp może uzyskać wskaźnik. Musimy teraz zdefiniować elementy struktury, więc dla restauracji zdefiniujemy dwa elementy, e.G., Nazwa i liczba pokoi w restauracji. Aby zdefiniować typ danych „nazwa” jako elementu struktury, użyjemy postaci „nazwa char” o wielkości tablicy 20, a do „# pokoi w restauracji” zdefiniujemy typ danych jako liczba całkowita „int”.

Do tej pory skonstruowaliśmy strukturę, do której uzyskamy później za pomocą operatora strzałek. Na podstawie przypisamy wartości do elementów struktury (e.G., Restauracja struktura Tulip, 34) i zdefiniuje zmienną wskaźnika jako *ptr. Następnie skręcimy wskaźnik PTR, aby wskazać restaurację struktury za pomocą operatora „&” i „Nazwa struktury”, jak wspomniano poniżej:

PTR = i restauracja

Teraz „PTR” wskazuje na strukturę „restauracja”. Jeśli chcemy teraz poznać informacje dotyczące elementów struktury, które już przechowyliśmy, zrobimy to za pomocą PTR z nazwą elementu, a następnie wyświetlić go za pomocą „Printf” E.G. „Printf („ nazwa % r \ n ”, ptr-> nazwa)”, a następnie użyj polecenia getch (), aby „nazwa ptr-> przypisała wartości tablicy znaków„ Tulip ”do nazwy elementu i„ ptr-> pokój ”(wartość liczb całkowita„ 34 ”) do elementu # pokoi w restauracji konstrukcyjnej.

#włączać
Restauracja struktura

Nazwa char [20];
pokoje int;
;
void main ()

Restauracja Struct Restaurant = „Tulip”, 34;
Restauracja struktura* ptr;
PTR = i restauracja;
printf („Nazwa: %restauracja \ n”, ptr-> nazwa);
printf („pokoje: %d \ n”, ptr-> pokoje);
getch ();

W wyjściu uzyskaliśmy oba elementy struktury za pomocą operatora strzałek.

Przykład nr 02

W wyżej wymieniony przykład zaimplementował operator strzałek za pomocą zmiennej wskaźnika, aby uzyskać dostęp do elementów struktury. W drugim przykładzie użyjemy operatora strzałek jako wskaźnika, aby uzyskać dostęp do członków Unii. Związek jest znany jako Deklaracja typu danych w C, ponieważ może przechowywać wiele zmiennych różnych typów danych w jedną lokalizację pamięci o tym samym adresie pamięci, w przeciwieństwie do struktury, w której każda zmienna ma inny adres pamięci.

Aby utworzyć związek, najpierw dołączmy wszystkie informacje printf i scanf w projekcie, włączając nagłówek „# w tym”. Następnie przejdź do utworzenia związku za pomocą metody deklaracji typu danych „Związek”, a następnie nazwij związek. Tutaj wybraliśmy „kraj”, aby być nazwą Unii. Teraz zdefiniujemy elementy Unii, e.G., citizen_id, citizen_net_income itp. Następnie zadeklarujemy typ danych Citizen_ID jako liczbę całkowitą i typ danych Citizen_Net_income, aby unosić się.

Na podstawie zdefiniujemy wskaźnik „*ptr” unii i przydzielimy go rozmiar pamięci (dynamiczny) za pomocą metody „Malloc ()”. Po pomyślnym wykonaniu powyższych kroków użyjemy PTR z operatorem strzałek i przypiszmy wartości do elementów Unii jako „ptr-> citizen_id = 01” i zwrócić 0, aby wyjść z kodu.

#włączać
#włączać
Union Country
int citizen_id;
float net_income;
;
Kraj Union* ptr = null;
int main ()

ptr = (Union Country*)
Malloc (sizeof (kraj Union));
ptr-> citizen_id = 01;
printf („%d”, ptr-> citizen_id);

W przykładzie próbowaliśmy uzyskać dostęp do elementu „Citizen_ID” i przypisać mu wartość „01” za pomocą operatora strzałek.

Wniosek

Artykuł obejmuje „operator strzał” w C. Za pomocą tego przewodnika możemy dowiedzieć się, dlaczego używamy operatora strzałek z wyjaśnieniem składni operatora. Użyliśmy operatora strzałek wraz ze zmienną wskaźnika, aby uzyskać dostęp do członków Unii lub Struktury. Ten przewodnik pokazuje demonstrację operatora strzałek za pomocą dwóch przykładów. Mamy dobre nadzieje, że znajdziesz najlepsze wykorzystanie tego artykułu, aby poprawić swoją wiedzę na temat korzystania z operatora strzałek w twoich kodach.