Linux программирование в примерах
Шрифт:
При условии, что освобожденная память продолжает оставаться в адресном пространстве процесса, стоит обнулить ее перед освобождением. Например, такой способ может оказаться предпочтительным для программ с повышенными требованиями к безопасности.
Обсуждение ряда полезных инструментов для отладки динамической памяти см в разделе 15.5.2 «Отладчики выделения памяти».
3.2.1.4. Изменение размера:
Динамическая память имеет существенное преимущество перед статически объявленными массивами, поскольку это позволяет использовать столько памяти,
Вдобавок, можно изменять размер динамически выделенной области памяти. Хотя можно сократить размер блока памяти, обычно его увеличивают. Изменение размера осуществляется с помощью
Как и в случае с
1. Вычислить новый выделяемый размер в байтах.
2. Вызвать
3. Привести тип и присвоить возвращенное
4. Как и для
При увеличении размера блока памяти
В любом случае вы можете предположить, что если
Возможно, вы заметили, что в нашем примере для указания на измененный блок памяти использовалась отдельная переменная. Можно было бы (хотя это плохая идея) использовать ту же самую переменную, как здесь:
Это плохо по следующей причине. Когда
Для версии
Вот другой довольно тонкий момент [42] . Рассмотрим процедуру, которая содержит статический указатель на динамически выделяемые данные, которые время от времени должны расти. Процедура может содержать также автоматические (т.е. локальные) указатели на эти данные. (Для краткости, мы опустим проверки ошибок. В коде продукта не делайте этого.) Например:
42
Он получен от реальной практики работы с
Гвардия. (Дилогия)
65. В одном томе
Фантастика:
научная фантастика
рейтинг книги
Я все еще царь. Книга XXXI
31. Дорогой барон!
Фантастика:
юмористическое фэнтези
аниме
попаданцы
рейтинг книги
Латино-Иерусалимское королевство
История крестовых походов
Научно-образовательная:
история
рейтинг книги
Академия
2. Медорфенов
Фантастика:
юмористическая фантастика
попаданцы
аниме
рейтинг книги
12
рейтинг книги
3ds Max 2008
Видеосамоучитель
Компьютеры и Интернет:
программное обеспечение
рейтинг книги
Неудержимый. Книга VI
6. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
рейтинг книги
Попала, или Кто кого
Любовные романы:
современные любовные романы
рейтинг книги
Управленческая элита. Как мы ее отбираем и готовим
Деловая литература:
управление, подбор персонала
рейтинг книги
Том 14. Критические статьи, очерки, письма
14. Собрание сочинений
Документальная литература:
критика
публицистика
рейтинг книги
Философия и культура
Научно-образовательная:
философия
рейтинг книги
В этом мире еще можно удивляться
Любовные романы:
любовно-фантастические романы
рейтинг книги
Газлайтер. Том 18
18. История Телепата
Фантастика:
попаданцы
аниме
фэнтези
рейтинг книги
Шум и ярость
Проза:
классическая проза
рейтинг книги