V tomto článku najdete relevantní příklady k předání struktur jako argumentu funkci a jejich použití ve vašem programu.
Proměnné struktury lze předat funkci a vrátit podobným způsobem jako normální argumenty.
Předávání struktury do funkce v C ++
Proměnnou struktury lze předat funkci podobným způsobem jako normální argument. Zvažte tento příklad:
Příklad 1: Struktura a funkce 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; )
Výstup
Zadejte celé jméno: Bill Jobs Zadejte věk: 55 Zadejte plat: 34233.4 Zobrazení informací. Jméno: Bill Jobs Věk: 55 Plat: 34233.4
V tomto programu je uživatel vyzván k zadání jména, věku a platu main()
funkce Osoba uvnitř .
Poté se má strukturní proměnná p předat funkci pomocí.
displayData (p);
Je vrácen návratový typ displayData()
is void
a jediný argument struktury typu Person.
Poté p
se z této funkce zobrazí členové struktury .
Příklad 2: Vrácení struktury z funkce 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 tohoto programu je stejný jako výše uvedený program.
V tomto programu je ve main()
funkci definována strukturní proměnná p typové struktury Osoba .
Proměnná struktury p je předána getData()
funkci, která přijímá vstup od uživatele, který je poté vrácen do hlavní funkce.
p = getData (p);
Poznámka: Hodnotu všech členů proměnné struktury lze přiřadit jiné struktuře pomocí operátoru přiřazení = pokud jsou obě proměnné struktury stejného typu. Nemusíte ručně přiřadit každého člena.
Potom se strukturní proměnná p předá displayData()
funkci, která informace zobrazí.