char* s_ с выделением памяти, провожу действия, и хочу присвоить внешнему s = s_; то после выхода из функции ничего не меняется? Будто передал копию, а не указатель
Ты передал копию указателя
перефразирую твой вопрос: почему, когда я передаю параметр в функцию по значению, любое изменение этого параметра в функции не приводит к изменению значения на стороне клиента. ведь когда ты пишешь: void foo(int d) { d = 10; } int d = 20; foo(d); // ты ведь не ожидаешь, что здесь d станет 10? или ожидаешь?
Обсуждают сегодня