Msgstr "Размер кучи по умолчанию составляет 1 МБ". Почему же я могу использовать malloc () больше, неправильно ли я понимаю слово «куча»? - PullRequest
0 голосов
/ 22 сентября 2011

В Microsoft Visual C ++ мне нужно было больше места в стеке. Поэтому я вошел в свойства компоновщика и поднял его. Но затем я заметил другое свойство: «Резервный размер кучи» (опция компоновщика: / HEAP) с примечанием: «Размер кучи по умолчанию составляет 1 МБ».

Почему я могу использовать malloc 50 МБ " в куче " с размером кучи 1 МБ?

Если я сделаю то же самое со стеком, я получу исключение нехватки места в стеке.

1 Ответ

1 голос
/ 22 сентября 2011

Почему я могу использовать malloc 50 МБ "в куче" с размером кучи 1 МБ?

Если я сделаю то же самое со стеком, я получу нехватку места в стеке исключение.

Это потому, что куча может расти, тогда как стек фиксирован. 1MB - это просто начальный размер кучи.

...