Structura și funcția C ++

În acest articol, veți găsi exemple relevante pentru a transmite structuri ca argument către o funcție și pentru a le utiliza în programul dvs.

Variabilele de structură pot fi transmise unei funcții și returnate într-un mod similar cu argumentele normale.

Structura de trecere pentru a funcționa în C ++

O variabilă de structură poate fi transmisă unei funcții în mod similar cu argumentul normal. Luați în considerare acest exemplu:

Exemplul 1: Structura și funcția 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; )

Ieșire

Introduceți numele complet: Bill Jobs Introduceți vârsta: 55 Introduceți salariul: 34233.4 Afișarea informațiilor. Nume: Bill Jobs Vârstă: 55 Salariu: 34233,4

În acest program, utilizatorul este rugat să introducă numele, vârsta și salariul unei persoane din cadrul main()funcției.

Apoi, variabila de structură p este transmisă unei funcții folosind.

 displayData (p);

Tipul returnat de displayData()este voidși este trecut un singur argument al structurii de tip Persoană.

Apoi, membrii structurii psunt afișați din această funcție.

Exemplul 2: Returnarea structurii din funcție în 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; ) 

Rezultatul acestui program este același cu programul de mai sus.

În acest program, variabila de structură p a structurii de tip Persoană este definită sub main()funcție.

Variabila de structură p este transmisă getData()funcției care preia intrarea de la utilizator, care este apoi revenită la funcția principală.

 p = getData (p); 

Notă: valoarea tuturor membrilor unei variabile de structură poate fi atribuită unei alte structuri utilizând operatorul de atribuire = dacă ambele variabile de structură sunt de același tip. Nu trebuie să atribuiți manual fiecărui membru.

Apoi variabila de structură p este trecută la displayData()funcție, care afișează informațiile.

Articole interesante...