У цьому прикладі ви навчитеся зберігати інформацію, введену користувачем, за допомогою динамічного розподілу пам'яті.
Щоб зрозуміти цей приклад, ви повинні знати такі теми програмування на С:
- C Покажчики
- C Динамічне розподіл пам'яті
- С структура
Ця програма просить користувача зберігати значення noOfRecords
та виділяє пам'ять для noOfRecords
структурних змінних динамічно за допомогою malloc()
функції.
Продемонструйте динамічне розподіл пам'яті для структури
#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; )
Вихідні дані
Введіть кількість записів: 2 Введіть назву предмета та позначки відповідно: Програмування 22 Введіть назву предмета та позначки відповідно: Структура 33 Відображення інформації: Програмування 22 Структура 33