До этого момента мы
работали только с данными, имеющими статическую, неизменяемую во время исполнения
программы, структуру. Во время работы программы могли изменяться только значения
переменных, в то время как количество переменных всегда оставалось постоянным
(отсюда и название — статические структуры). Это не всегда удобно.
Например, в программе,
предназначенной для ввода и обработки данных об учениках класса, для хранения
данных используются массивы. При определении размера массива программисту приходится
ориентироваться на некоторое среднее или предельное количество учеников в классе.
При этом, если реально учеников в классе меньше предполагаемого количества,
то неэффективно используется память компьютера, а если это число больше, то
программу использовать уже нельзя (надо внести изменения в исходный текст и
выполнить компиляцию).
Задачи, обрабатывающие данные, которые по своей природе являются динамическими, удобно решать с помощью динамических структур.