Структура и функция на C ++

В тази статия ще намерите подходящи примери за предаване на структури като аргумент на функция и ще ги използвате във вашата програма.

Структурните променливи могат да бъдат предадени на функция и върнати по подобен начин като нормалните аргументи.

Предаване на структура за функциониране в 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; )

Изход

Въведете пълното име: Bill Jobs Въведете възраст: 55 Въведете заплата: 34233.4 Показване на информация. Име: Бил Джобс Възраст: 55 Заплата: 34233.4

В тази програма потребителят е помолен да въведе името, възрастта и заплатата на main()функцията Person inside .

След това структурната променлива p трябва да се предаде на функция, използвайки.

 displayData (p);

Типът на връщане displayData()е 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()функция, която показва информацията.

Интересни статии...