Štruktúra a funkcia C ++

V tomto článku nájdete príslušné príklady na odovzdanie štruktúr ako argumentu funkcii a ich použitie vo vašom programe.

Štruktúrne premenné je možné odovzdať funkcii a vrátiť ich podobným spôsobom ako bežné argumenty.

Predávanie štruktúry funkcii v C ++

Štruktúrnu premennú je možné odovzdať funkcii podobným spôsobom ako normálny argument. Zvážte tento príklad:

Príklad 1: C ++ štruktúra a funkcia

 #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; )

Výkon

Zadajte celé meno: Bill Jobs Zadajte vek: 55 Zadajte plat: 34233.4 Zobrazenie informácií. Meno: Bill Jobs Vek: 55 Plat: 34233,4

V tomto programe je používateľ vyzvaný na zadanie mena, veku a platu funkcie Osoba vo vnútri main().

Potom sa má premenná štruktúry p odovzdať funkcii pomocou.

 displayData (p);

Je vrátený návratový typ displayData()is voida jeden argument typovej štruktúry Person.

Potom psa z tejto funkcie zobrazia členovia štruktúry .

Príklad 2: Vrátenie štruktúry z funkcie v 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; ) 

Výstup tohto programu je rovnaký ako vyššie uvedený program.

V tomto programe je vo main()funkcii definovaná štruktúrna premenná p typovej štruktúry Person .

Štrukturálna premenná p sa odovzdá getData()funkcii, ktorá prevezme vstup od používateľa, ktorý sa potom vráti do hlavnej funkcie.

 p = getData (p); 

Poznámka: Hodnotu všetkých členov premennej štruktúry je možné priradiť k inej štruktúre pomocou priradenia operator =, ak sú obidve premenné štruktúry rovnakého typu. Nie je potrebné manuálne priraďovať každého člena.

Potom sa štrukturálna premenná p odovzdá displayData()funkcii, ktorá zobrazí informácie.

Zaujímavé články...