Declararea unei structuri
Sintaxa generală a declarării unui tip de date struct
este următoarea:
struct [NUME_STRUCTURĂ] { [TIP1 NUME_CÂMP[, NUME_CÂMP[, ...]];] [TIP2 NUME_CÂMP[, NUME_CÂMP[, ...]];] ... } [LISTA DE VARIABILE];
În acest mod s-a declarat un tip de date cu numele NUME_STRUCTURA
și eventual niște variabile de acest tip. În continuare NUME_STRUCTURA
poate fi folosit ca un tip de date oarecare, de exemplu pentru a declara variabile sau în lista parametrilor formali ai unei funcții.
Pentru exemplul dat mai sus, declararea va fi:
struct Persoana{ char nume[21], prenume[21], sex; int varsta; double salariu; };
Variabile de tip structură
În exemplul de mai sus s-a declarat o structură cu numele Persoana
, dar nu s-a declarat nicio variabilă de acest tip. Pentru a declara variabile de tip Persoana
putem să le adăugăm la declararea structurii:
struct Persoana{ char nume[21], prenume[21], sex; int varsta; double salariu; } A, B;
(am declarat odată cu tipul de date Persoana
și două variable A
și B
de acest tip), sau putem să le declarăm ulterior declarării tipului de date, astfel:
Această declarare este corectă în C++, dar nu este corectă în C:
Persoana A, B;
sau
Această declarare este corectă atât în C++ cât și în C:
struct Persoana A, B;
În declarările de mai sus avem următoarele:
Persoana
– este un tip de date, similar cuint
sauchar
;A
șiB
– sunt nume de variabile. Tipul acestor variabile estePersoana
sau, mai explicit,struct Persoana
;nume
,prenume
,sex
,varsta
,salariu
– sunt numele unor câmpuri ale structuriiPersoana
. Ele pot fi utilizate într-un program doar dacă există variabile de tipPersoana
!
Exerciții
107 110 263 265