Я часто видел функции, похожие на следующие в C:
do_something(buffer, original_data)
В этом случае он берет исходные данные (часто const
) и возвращает данные, запрошенные пользователем, вбуфер.Например, такая функция, как gets
или readline
.
Что делать, если в программе имеется определенное ограничение памяти и нет места для возврата как исходных данных, так и запрашиваемых данных.Например, что делать, если есть 1 ГБ текстовых данных, которые необходимо отсортировать, а пользователю не доступно 2 ГБ.Что может быть примером функции (например, функции сортировки), которая может быть запущена путем изменения данных на месте?