Вопрос: Я передаю функции указатель, который она инициализирует
но указатель после вызова функции остается неизменным. Ответ: Функция пытается изменить сам указатель, или то, на что он ссылается? Помните, что аргументы в С передаются по значению. Вызываемая функция изменяет только копию передаваемого указателя. Вам нужно либо передать адрес указателя (функцию будет в этом случае принимать указатель на указатель), либо сделать так, чтобы функция возвращала указатель. Примечание: out-параметры (параметры, изменяемые функцией) на C передаются по указателю:
В языке С++ можно передавать параметры по ссылке:
-- Кодт |