У цій статті ви знайдете відповідні приклади передачі структур як аргументу функції та використаєте їх у своїй програмі.
Структурні змінні можуть бути передані функції та повернуті подібним чином, як звичайні аргументи.
Передача структури для функціонування в C ++
Змінна структури може бути передана функції так само, як звичайний аргумент. Розглянемо цей приклад:
Приклад 1: Структура та функції С ++
#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; )
Вихідні дані
Введіть ПІБ: Білл Джобс Введіть вік: 55 Введіть зарплату: 34233.4 Відображення інформації. Ім'я: Білл Джобс Вік: 55 Зарплата: 34233.4
У цій програмі користувачеві пропонується ввести ім’я, вік та заробітну плату особи, яка знаходиться всередині main()
функції.
Потім структурну змінну p передають функції, використовуючи.
displayData (p);
Тип повернення displayData()
is void
і передається один аргумент структури типу Person.
Потім члени структури p
відображаються з цієї функції.
Приклад 2: Повернення структури з функції в 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; )
Результат роботи цієї програми такий самий, як і програма вище.
У цій програмі структурна змінна p типової структури Person визначається під main()
функцією.
Структурна змінна p передається getData()
функції, яка бере вхідні дані від користувача, а потім повертається до основної функції.
p = getData (p);
Примітка: Значення всіх членів змінної структури може бути присвоєно іншій структурі за допомогою оператора присвоєння = якщо обидві структурні змінні одного типу. Вам не потрібно вручну призначати кожного учасника.
Потім структурна змінна p передається displayData()
функції, яка відображає інформацію.