I den här artikeln hittar du relevanta exempel för att skicka strukturer som ett argument till en funktion och använda dem i ditt program.
Strukturvariabler kan skickas till en funktion och returneras på samma sätt som normala argument.
Passerar struktur för att fungera i C ++
En strukturvariabel kan skickas till en funktion på liknande sätt som normalt argument. Tänk på detta exempel:
Exempel 1: C ++ struktur och funktion
#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; )
Produktion
Ange fullständigt namn: Bill Jobs Ange ålder: 55 Ange lön: 34233.4 Visar information. Namn: Bill Jobs Ålder: 55 Lön: 34233.4
I det här programmet uppmanas användaren att ange namn, ålder och lön för en person inom main()
funktionen.
Sedan ska strukturvariabeln p skickas till en funktion med.
displayData (p);
Returtypen av displayData()
är void
och ett enda argument av typstrukturen Person skickas.
Sedan p
visas medlemmarna i strukturen från denna funktion.
Exempel 2: Returnerar struktur från funktion i 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; )
Resultatet för detta program är detsamma som programmet ovan.
I detta program definieras strukturvariabeln p för typstrukturen Person under main()
funktion.
Strukturvariabeln p skickas till getData()
funktion som tar inmatning från användare som sedan återförs till huvudfunktionen.
p = getData (p);
Obs: Värdet på alla medlemmar i en strukturvariabel kan tilldelas en annan struktur med hjälp av tilldelningsoperator = om båda strukturvariablerna är av samma typ. Du behöver inte tilldela varje medlem manuellt.
Sedan skickas strukturvariabeln p till displayData()
funktion, som visar informationen.