Динамическое выделение памяти под массив структур - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Подскажите, пожалуйста, как верно выделить память под массив структур, размер которого вводится в процессе работы программы. Мой вариант не работает:
Листинг программы
  1. struct scan_info **input_item;
  2. printf ("\nВведите количество записей:\n");
  3. scanf ("%d", &n_of_items);
  4. for (i=0;i<n_of_items;i++) input_item[i] = new scan_info;
на 6ой строчке падает с ошибкой:
Run-Time Check Failure #3 - The variable 'input_item' is being used without being initialized.

Решение задачи: «Динамическое выделение памяти под массив структур»

textual
Листинг программы
  1. scan_info *input_item;
  2.  
  3. printf ("\nВведите количество записей:\n");
  4. scanf ("%d", &n_of_items);
  5.  
  6. input_item=new scan_info[n_of_items];

Объяснение кода листинга программы

  1. Вводится переменная типа scan_info под именем input_item.
  2. Выводится сообщение Введите количество записей:.
  3. Пользователь вводит количество записей с помощью функции scanf и сохраняет его в переменную n_of_items типа int.
  4. С помощью оператора new динамически выделяется память под массив структур scan_info типа scan_info[n_of_items].

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.714 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы