C ++ struktūra ir funkcija

Šiame straipsnyje rasite svarbių pavyzdžių, kaip perduoti struktūras kaip argumentą funkcijai ir naudoti juos savo programoje.

Struktūros kintamuosius galima perduoti funkcijai ir grąžinti panašiai kaip įprastus argumentus.

Struktūra, veikianti C ++

Struktūros kintamąjį galima perduoti funkcijai panašiai kaip įprastą argumentą. Apsvarstykite šį pavyzdį:

1 pavyzdys: C ++ struktūra ir funkcija

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

Rezultatas

Įveskite vardą: Bill Jobs Įveskite amžių: 55 Įveskite atlyginimą: 34233.4 Rodoma informacija. Vardas: Bill Jobs Amžius: 55 Atlyginimas: 34233,4

Šioje programoje vartotojo prašoma įvesti asmens viduje main()funkcijos pavadinimą, amžių ir atlyginimą .

Tada struktūros kintamasis p turi būti perduotas funkcijai naudojant.

 displayData (p);

Grąžinimo tipas displayData()yra voidir perduodamas vienas tipo struktūros asmens argumentas.

Tada piš šios funkcijos rodomi struktūros nariai .

2 pavyzdys: struktūros grąžinimas iš funkcijos 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; ) 

Šios programos išvestis yra tokia pati, kaip ir aukščiau.

Šioje programoje struktūros Asmuo struktūros kintamasis p yra apibrėžtas pagal main()funkciją.

Struktūros kintamasis p perduodamas getData()funkcijai, kuri perima vartotojo įvestį, o tada grąžinama į pagrindinę funkciją.

 p = getData (p); 

Pastaba: Visų struktūros kintamųjų narių reikšmę galima priskirti kitai struktūrai naudojant priskyrimo operatorių = jei abu struktūros kintamieji yra to paties tipo. Nereikia rankiniu būdu priskirti kiekvieno nario.

Tada funkcijai perduodamas struktūros kintamasis p displayData(), kuris rodo informaciją.

Įdomios straipsniai...