Динамическое выделение памяти под массив структур - C (СИ)
Формулировка задачи:
Подскажите, пожалуйста, как верно выделить память под массив структур, размер которого вводится в процессе работы программы.
Мой вариант не работает:
на 6ой строчке падает с ошибкой:
struct scan_info **input_item;
printf ("\nВведите количество записей:\n");
scanf ("%d", &n_of_items);
for (i=0;i<n_of_items;i++) input_item[i] = new scan_info;
Run-Time Check Failure #3 - The variable 'input_item' is being used without being initialized.
Решение задачи: «Динамическое выделение памяти под массив структур»
textual
Листинг программы
scan_info *input_item;
printf ("\nВведите количество записей:\n");
scanf ("%d", &n_of_items);
input_item=new scan_info[n_of_items];
Объяснение кода листинга программы
- Вводится переменная типа scan_info под именем input_item.
- Выводится сообщение
Введите количество записей:. - Пользователь вводит количество записей с помощью функции scanf и сохраняет его в переменную n_of_items типа int.
- С помощью оператора new динамически выделяется память под массив структур scan_info типа scan_info[n_of_items].