Чому переповнюється стек?

Pratvoloshka.org.ua  » Поради для дому »  Чому переповнюється стек?
0 Comments

У програмному забезпеченні переповнення стека (англ. stack overflow) виникає, коли в стеку викликів зберігається більше інформації, ніж може вмістити. Зазвичай ємність стека задається під час старту програми/потоку. Коли вказівник стека виходить за межі, програма аварійно завершує роботу.

Стек викликів може використовуватися для різних потреб, але основне його призначення – відстежувати місце, куди кожна з викликаних процедур повинна повернути керування після завершення. Для цього під час виклику процедури (командами виклику) у стек заноситься адреса команди, яка йде за командою виклику («Адреса повернення»).

Стек (англ. stack – стопка) технологій – це набір інструментів, що застосовується при роботі в проектах і включає мови програмування, фреймворки, системи управління базами даних, компілятори і т.д.

Стек (англ. stack – стопка; читається стек) — абстрактний тип даних, що є список елементів, організованих за принципом LIFO (англ. last in — first out, «останнім прийшов — першим вийшов»).