int main()
{
int x; // Переменная
int &s=x; // Ссылка
int *p=&x; // Указатель
int **pp;
pp=&p;
/*Следующие строки эквивалентны:*/
x=2;
s=2;
*p=2;
/*А теперь выводим адреса и ничему не удивляемся*/
cout<<&x<<endl; // Адрес, по которому валяется сама переменная
cout<<&s<<endl; // Адрес, по которому валяется ссылка
cout<<&p<<endl; // Адрес, по которому валяется указатель
/*Указатель валяется по отдельному адресу. А ссылка и переменная?*/
/*Теперь выводим значения*/
cout<<x<<endl; // Значение переменной
cout<<s<<endl; // Значение ссылки
cout<<p<<endl; // Значение указателя
/*А теперь значение по адресу, равному значению указателю*/
cout<<*p<<endl; // Значение переменной
}