Интервал не имеет значения, поэтому первые два идентичны.
int** i;
Указатель на указатель на int.
Например, если i
содержит значение указателя, тогда это будет означать, что в памяти, начиная с этого адреса, был другой указатель, на этот раз непосредственно на int
, и если вы перейдете по этому адресу , то вы найдетеint
числовое значение.
int an_int = 3;
int* p = &an_int;
int** pp = &p;
Это формирует цепочку ...
int** pp = &p ------> int* p = &an_int ------> int an_int = 3