Хорошо, я прохожу через 2 уровня функций fun1 вызывает func2 вызывает func3. Я передаю указатель до конца, используя в основном int * ptr, на самом низком «уровне» стека вызовов у меня также есть другая функция, которая динамически выделяет память для массива int. На верхнем уровне (уровень func1) я всегда возвращаю нулевое значение для переданного указателя. Я проследил до func3 и выделенная память заполняется значениями, но когда стек вызовов раскручивается, func3 -> func2 вдруг указатель просто исчезает (0x0000_0000)? Я не понимаю, на уровне func3, я в основном говорю, что ptr = allocate_ptr_array, но от этого возврата он доходит до NULL! Несмотря на то, что я не освободил память, что происходит в мире? Я знаю, что мой вопрос сбивает с толку. Я наблюдал, как это происходит в отладчике, хотя