Объясните каждую переменную, представленную следующим образом:
type : (name, adress, value)
, поэтому ваши переменные должны быть представлены следующим образом
int : ( i , &i , 5 ); ( j , &j , 6); ( k , &k , 5 )
int* : (ip1, &ip1, &i); (ip1, &ip1, &j)
int** : (ipp, &ipp, &ip1)
Поскольку значение ipp
равно &ip1
, так inctruction:
*ipp = ip2;
изменяет значение на добавке &ip1
на значение ip2
, что означает ip1
:
(ip1, &ip1, &i) -> (ip1, &ip1, &j)
Но ipp
еще:
(ipp, &ipp, &ip1)
Таким образом, значение ipp
все еще &ip1
, что означает, что оно все еще указывает на ip1
.