Указатели на структуры используются для создания связанных списков, где каждый элемент имеет указатель на следующий и/или предыдущий элемент этого же типа структуры. 1
Например, линейный односвязный список реализуется с помощью структуры, в которой обязательным полем является указатель на следующий элемент в списке (то есть это будет указатель на такую же структуру). 3 Последний элемент списка в качестве указателя на следующий элемент списка (которого нет) должен обязательно иметь значение нулевого указателя: nullptr. 3 Для работы со списком используется указатель на первый его элемент head: Elem * head. 3
Также для создания связанного списка можно использовать одномерный массив, который будет действовать как блок памяти фиксированного размера. 2 Затем связанный список будет «выделен» путём удаления узла и помещения его в массив или «освобождены» данные путём удаления их из массива для добавления обратно в список. 2