W tym artykule znajdziesz odpowiednie przykłady przekazywania struktur jako argumentu do funkcji i używania ich w swoim programie.
Zmienne struktury mogą być przekazywane do funkcji i zwracane w podobny sposób, jak zwykłe argumenty.
Przekazywanie struktury do funkcji w C ++
Zmienną strukturalną można przekazać do funkcji w podobny sposób, jak zwykły argument. Rozważmy ten przykład:
Przykład 1: Struktura i funkcja języka C ++
#include using namespace std; struct Person ( char name(50); int age; float salary; ); void displayData(Person); // Function declaration int main() ( Person p; cout << "Enter Full name: "; cin.get(p.name, 50); cout <> p.age; cout <> p.salary; // Function call with structure variable as an argument displayData(p); return 0; ) void displayData(Person p) ( cout << "Displaying Information." << endl; cout << "Name: " << p.name << endl; cout <<"Age: " << p.age << endl; cout << "Salary: " << p.salary; )
Wynik
Wpisz Imię i nazwisko: Bill Jobs Wpisz wiek: 55 Wpisz wynagrodzenie: 34233.4 Wyświetlanie informacji. Imię i nazwisko: Bill Jobs Wiek: 55 Wynagrodzenie: 342 33.4
W tym programie użytkownik jest proszony o podanie imienia i nazwiska, wieku i wynagrodzenia osoby w main()
funkcji.
Następnie zmienna strukturalna p jest przekazywana do funkcji za pomocą.
displayData (p);
Zwracany typ displayData()
to void
i przekazywany jest pojedynczy argument struktury typu Person.
Następnie p
z tej funkcji wyświetlane są elementy struktury .
Przykład 2: Zwracanie struktury z funkcji w C ++
#include using namespace std; struct Person ( char name(50); int age; float salary; ); Person getData(Person); void displayData(Person); int main() ( Person p; p = getData(p); displayData(p); return 0; ) Person getData(Person p) ( cout << "Enter Full name: "; cin.get(p.name, 50); cout <> p.age; cout <> p.salary; return p; ) void displayData(Person p) ( cout << "Displaying Information." << endl; cout << "Name: " << p.name << endl; cout <<"Age: " << p.age << endl; cout << "Salary: " << p.salary; )
Wynik tego programu jest taki sam, jak program powyżej.
W tym programie zmienna strukturalna p struktury typu Person jest zdefiniowana w main()
funkcji.
Zmienna strukturalna p jest przekazywana do getData()
funkcji, która pobiera dane wejściowe od użytkownika, które są następnie zwracane do funkcji głównej.
p = getData (p);
Uwaga: Wartość wszystkich członków zmiennej strukturalnej można przypisać do innej struktury za pomocą operatora przypisania =, jeśli obie zmienne strukturalne są tego samego typu. Nie musisz ręcznie przypisywać każdego członka.
Następnie zmienna strukturalna p jest przekazywana do displayData()
funkcji, która wyświetla informacje.