In dit voorbeeld leert u de door de gebruiker ingevoerde informatie op te slaan met behulp van dynamische geheugentoewijzing.
Om dit voorbeeld te begrijpen, moet u kennis hebben van de volgende C-programmeeronderwerpen:
- C Pointers
- C Dynamische geheugentoewijzing
- C struct
Dit programma vraagt de gebruiker om de waarde van op te slaan noOfRecords
en wijst het geheugen noOfRecords
dynamisch toe aan de structuurvariabelen met behulp van de malloc()
functie.
Demonstreer de dynamische geheugentoewijzing voor structuur
#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; )
Uitvoer
Voer het aantal records in: 2 Voer respectievelijk de naam van het onderwerp en de markeringen in: Programmeren 22 Voer de naam van het onderwerp en respectievelijk de markeringen in: Structuur 33 Informatie weergeven: Programmeren 22 Structuur 33