Jak przekazać strukturę do funkcji w C

Jak przekazać strukturę do funkcji w C
Struktura była szeroko stosowana jako typ danych zdefiniowany przez użytkownika w języku C. Celem wykorzystania struktur w C jest utworzenie pojedynczego typu danych, który byłby użyty do grupie różnych zmiennych lub elementów typu danych na jeden typ. Struktura została użyta jako zmienna globalna, aby wszystkie funkcje mogły łatwo do niego uzyskać dostęp. Oznacza to, że nie można go zadeklarować w głównej metodzie, abyśmy mogli go używać w dowolnym miejscu.

Składnia struktury:

Deklaracja struktury pokazano na poniższym obrazku. Zaczyna się od słowa kluczowego „struct” wraz z dowolną nazwą struktury, która została mu podana. W ramach struktury możemy zdefiniować wiele zmiennych dowolnego rodzaju. Ciało struktury byłyby zamknięte „;”. Aby przejść funkcję, w tym przewodniku użyjemy dwóch metod. Spójrzmy na obie metody.

Przykład 01: Przejdź strukturę do funkcji według wartości

Pierwszą metodą przekazania struktury do funkcji jest wartość. Użyjmy tej metody, aby utworzyć plik C w powładzie za pomocą zapytania dotykowego.

$ touch exp.C

Po utworzeniu pliku musisz go otworzyć w jakimś edytorze, ja.mi., Edytor GNU Nano, używając poniższego polecenia.

$ nano exp.C

Po otwarciu pliku zapisz kod w pliku, jak pokazano na obrazie. Pierwsza linia zawiera nagłówek. Struktura „ludzka” została zadeklarowana dwiema zmiennymi. Jednym z nich jest zmienna charakteru „nazwa” rozmiaru „30”. Inna to zmienna typu liczb całkowita używana do przechowywania wieku człowieka. Wejście zostało dostarczone przez użytkownika w czasie wykonywania za pomocą metody Scanf. To wejście zostało zapisane na zmiennych struktury za pomocą obiektów. Następnie struktura została przekazana do określonej przez użytkownika metodę show () jako argument. To wywołanie funkcji do metody show (). Metoda show przyjmuje strukturę w swoim parametrze jako wartość. Wartości zmiennej struktury zostały wyświetlone na konsoli za pośrednictwem instrukcji PrintF używanej w funkcji zdefiniowanej przez użytkownika ().

Zapisz swój plik za pomocą klawisza skrótu CTRL+. Potem wróciłem do terminalu za pomocą skrótu „Ctrl+X”. Najpierw musimy skompilować wyżej wymieniony kod. Kompilator „GCC” został w tym celu wykorzystany. Ostatecznie ma miejsce wykonanie pliku. Użytkownik dodał swoją nazwę i wiek. Struktura została przekazana do metody pokazania () jako wartości. Wartości struktury zostały wyświetlone poniżej.

$ gcc exp.C
$ . /A.na zewnątrz

Udane wyjście można zobaczyć w oknie terminalu Ubuntu 20.04.

Przykład 02: Przejdź strukturę do funkcji przez odniesienie

Teraz zacznijmy od tej ilustracji. W tym przykładzie będziemy patrzeć na strukturę, która zostanie przekazana do metody zdefiniowanej przez użytkownika za pomocą odniesienia. W tej metodzie cała struktura lub wartości nie zostały przekazane do innej funkcji. Adres pamięci zmiennej struktury zostanie przekazany do metody jako odniesienie. Tak więc otworzyliśmy ten sam plik: „Exp.c ”, aby go zaktualizować. Obejmował standardowy nagłówek wejściowy. Stworzyliśmy nową strukturę o nazwie „Cal” o dwóch zmiennych typu liczb całkowitych N1 i N2. Utworzono obiekt odniesienia struktury „cal”. Prototyp funkcji metody „sum ()” został zadeklarowany przed główną metodą.

Główna funkcja zawiera metodę scanf () do umowy wejściowej od użytkownika w czasie wykonywania. Wartości zostały przekazane do zmiennych struktury przez odniesienie za pomocą ich adresów pamięci. Znak „i” został tutaj użyty do powiązania adresów pamięci zmiennych struktury z wartościami wprowadzonymi przez użytkownika. Adres i wartości obiektu zmiennego „C” i „Total” zostały przekazane do funkcji „suma” jako odniesienie.

Funkcja „suma” otrzymuje wartości zmiennych struktury N1 i N2 przez odniesienie do obiektu „C” i dodawanie ich. Powstałe wartości zostały zapisane na zmiennej N1. Główna metoda wyświetla sumę obu zmiennych.

Skompiluj i uruchom kod. Użytkownik dodał dwie liczby, a suma obu liczb została wyświetlona. GCC i „A.wykorzystywano tutaj „polecenia”.

$ gcc exp.C
$ . /A.na zewnątrz

Udane wyjście można zobaczyć w oknie terminalu Ubuntu 20.04.

Wniosek:

Ten artykuł zawiera implementację przechodzącej struktury do funkcji zdefiniowanej przez użytkownika w języku C. W tym celu zastosowano dwa podejścia, ja.mi., według wartości i odniesienia. Ucząc się, jak przekazać strukturę do funkcjonowania w języku programowania C, możesz użyć obu metod. Mamy nadzieję, że ten artykuł pomoże ci w najlepszym wydaniu zrozumieć koncepcję przekazania struktury dowolnej funkcji zdefiniowanej przez użytkownika w programowaniu C.