Я следовал этому учебнику о том, как работает указатель на указатель.
Позвольте мне привести соответствующий отрывок:
int i = 5, j = 6, k = 7; int *ip1 = &i, *ip2 = &j;
Теперь мы можем установить
int **ipp = &ip1;
и
ipp
указывает наip1
, который указывает наi
.*ipp
-ip1
, а**ipp
-i
или 5. Мы можем проиллюстрировать ситуацию с помощью нашей знакомой нотации в виде ящика и стрелки, например:
Если тогда мы скажем
*ipp = ip2;
мы изменили указатель, на который указывает
ipp
(т.е.ip1
), чтобы содержать копиюip2
, так что она (ip1
) теперь указывает наj
:
Мой вопрос: почему во втором изображении ipp
все еще указывает на ip1
, но не ip2
?