В этом примере вы научитесь сохранять информацию, введенную пользователем, с использованием динамического распределения памяти.
Чтобы понять этот пример, вы должны знать следующие темы программирования на C:
- Указатели C
- 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