• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

В чем разница статического и динамического распределения памяти?

Shelldy

Well-known member
11.02.2020
49
0
BIT
4
Учусь программированию и в данный момент изучаю C++. Хотел бы узнать, чем отличается динамическое распределение памяти от статического.
 
Решение
Учусь программированию и в данный момент изучаю C++. Хотел бы узнать, чем отличается динамическое распределение памяти от статического.
если простым языком, то статическое выделяет память под определенное количество байтов, и ему не важно заполнили вы его или нет. То есть если вы создали массив под 5 чисел, а ввели в массив только 2 числа, то все остальная память будет заполнена мусором. В динамическом же распределении вы указываете только максимальный размер , но при этом если вы используете меньше памяти , то остальная часть остается свободной, и так сказать зарезервированной

обычно это объясняют , даже в обычных статьях или методичках
Учусь программированию и в данный момент изучаю C++. Хотел бы узнать, чем отличается динамическое распределение памяти от статического.
Не знаю СИ. Но предположу что статическое - это заданное значение выделения памяти,а динамическое - сколько нужно памяти,столько и будет выделено.
 
Учусь программированию и в данный момент изучаю C++. Хотел бы узнать, чем отличается динамическое распределение памяти от статического.
если простым языком, то статическое выделяет память под определенное количество байтов, и ему не важно заполнили вы его или нет. То есть если вы создали массив под 5 чисел, а ввели в массив только 2 числа, то все остальная память будет заполнена мусором. В динамическом же распределении вы указываете только максимальный размер , но при этом если вы используете меньше памяти , то остальная часть остается свободной, и так сказать зарезервированной

обычно это объясняют , даже в обычных статьях или методичках
 
Решение
Хотел бы узнать, чем отличается динамическое распределение памяти от статического.
Статическая память выделяется на этапе компиляции программы, т.е нельзя выделить её после загрузки приложения в память. А для динамического резерва, в системе имеются специальные аллокаторы, и функции Win32-API типа HeapAlloc() и VirtualAlloc(). Они позволяют выделять страницы виртуальной памяти в любой момент, по требованию.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!