Складаються з елементів того самого типу. Тип елементів може бути кожним.
Зв'язок між елементами і доступ до стек здійснюється за допомогою типізованих покажчиків. По цьому на ряді з інформацією кожен елемент стека повинна мати покажчики на попередній елемент.
Кількість елементів стека заздагеліть не задається. Воно може змінюватися в процесі виконання програми. Розмір одного елемента стека не може перевищувати 64 Кбайт.
При описі типу - стік, використовується рекурсія.
Доступ до елементів стека послідовний і обмежений. Вштовхування елемента в стек (Push), виштовхування елемента зі стека (Pop) можливі тільки з одного кінця структури - вершини стека (Top). Тому при створенні і використанні стека потрібно заготовити перемінну покажчик на вершину стека Top. Це може бути нетипізований покажчик типу Pointer. Доступ до інформації в такій структурі реалізується за принципом "Останнім прийшов, першим пішов" Lifo (Last in, First out). Завдяки цій особливості стекам іноді дають наступне визначення:
Стік - це лінійний список, у якому всі операції вставки і видалення відбуваються тільки на одному з кінців списку.