В чем разница между выделенной и зарезервированной памятью? - PullRequest
1 голос
/ 29 апреля 2020

как новичок в изучении встроенных программ, я не могу понять нюанс между зарезервированной памятью и выделенной памятью , кто-нибудь может мне помочь?

1 Ответ

2 голосов
/ 29 апреля 2020

В указанном вами абзаце они говорят только о стеке вызовов (который является одним из возможных типов памяти).

Стек вызовов имеет максимальный размер, который "резервируется" во время компиляции , но в основном не используется при запуске программы. Ваши локальные переменные и вызовы функций помещаются в стек при вызове функции, которая временно «выделяет» память до тех пор, пока функция не вернется, - тогда она «освобождается».

Если вы выделяете больше памяти, чем Вы зарезервировали - например, с бесконечной рекурсией, тогда ваша программа будет иметь .......

Ошибка переполнения стека.

...