În acest exemplu, veți învăța să stocați informațiile introduse de utilizator utilizând alocarea dinamică a memoriei.
Pentru a înțelege acest exemplu, ar trebui să aveți cunoștințele următoarelor subiecte de programare C:
- C Pointeri
- C Alocarea dinamică a memoriei
- C struct
Acest program solicită utilizatorului să stocheze valoarea noOfRecords
și alocă noOfRecords
dinamic memoria variabilelor de structură folosind malloc()
funcția.
Demonstrați alocarea dinamică a memoriei pentru structură
#include #include struct course ( int marks; char subject(30); ); int main() ( struct course *ptr; int i, noOfRecords; printf("Enter the number of records: "); scanf("%d", &noOfRecords); // Memory allocation for noOfRecords structures ptr = (struct course *)malloc(noOfRecords * sizeof(struct course)); for (i = 0; i subject, &(ptr + i)->marks); ) printf("Displaying Information:"); for (i = 0; i subject, (ptr + i)->marks); return 0; )
Ieșire
Introduceți numărul de înregistrări: 2 Introduceți numele subiectului și respectiv marcajele: Programare 22 Introduceți numele subiectului și respectiv marcajele: Structura 33 Afișarea informațiilor: Programarea 22 Structura 33