Работа ссылки и указателя на указатель

Всем добрый день. В методичке был такой кусок кода:

void delete_stack(stack** p) {
stack* time;
while (*p != NULL) {
    time = *p;
    *p = (*p)->next;
    delete time;
}}

И вызов данной функции:

delete_stack(&begin);

Где begin-указатель на структуру stack (однонаправленный список). Код рабочий, но хотелось бы глубже разобраться, почему при вызове функции используется адрес, а сама функция принимает указатель на указатель, и как ещё это можно использовать


Ответы (0 шт):