Structuri ca argumente ale funcției

int nVar; 1Var lung; shVar scurt; Uivar int unsigned;

Funcția prototip este, de exemplu, au forma: void func (ALLNUMB);

Astfel, există o funcție de transfer în organism prin structura parametrului tip de valoare. Astfel, o modificare structurată a obiectului original nu este supus. Funcția poate reveni, de asemenea, obiectul de structura de tip:

În acest caz, datele modificate atunci când funcția nu este pierdut, și va fi transferat la funcția de apel.

Luați în considerare exemplul funcției de transfer în structura Casa descrisă mai sus pentru a afișa numele străzii și numărul casei, conținute de acestea.

Regnum scurt unsigned;

MaxFloorNum scurt unsigned;

MaxFlatNum scurt unsigned;

strcpy (MyHouse.Street, "strada Gogol.");

void OutAddress (casa)

cout «house.Street« ""; cout «house.HouseNum« '\ n';

Call OutAddress funcția (MyHouse) transmite o structură a corpului format, accesul membrilor care se efectuează în conformitate cu regula de mai sus, cu caracterul „punct“ (.). Rezultatul va fi afișat:

structura matrice

Prin ea însăși, o singură structură de tip de înregistrare, în cele mai multe cazuri, este puțin probabil să provoace un interes sporit. Cu toate acestea, atunci când datele structurate sunt combinate în matrice, nu mai despre un singur obiect este, ci a întregii baze de date.

Accesul la elementele matrice în modul obișnuit, de exemplu, pe un indice (indexare pornind de la zero a întreprins). Următorul fragment de cod efectuează un ciclu de umplere HOUSE structură ordonată de numere de casă, iar apoi emite datele înregistrate în coloana de pe ecran:

pentru (int i = 0; i<30; i++)

pentru (int i = 0; i<30; i++)

cout «mDistrfi] .HouseNum« '\ n';

Să ne amintim că funcția de conversie a unui număr întreg la un șir de caractere itoa () trebuie să se conecteze modulul stdlib.h.

Deoarece structura de înregistrare are de foarte multe ori dimensiuni considerabile (pot include matrici de elemente de alte structuri, etc.) ar trebui să fie luate în considerare de limitările de memorie atunci când aleg sootvetstvuyushaya model.