#include <iostream>
using namespace std;
int main(){
int a=1;
int &q=a;//定义a的引用
int *p,*p1=0;//定义一个指针p,p1
int *&r=p;//定义一个指针的引用
p=&a;//给p,r赋值
*r=2; //改变a值
//输出结果为a的地址
cout<<r<<" "<<p<<" "<<&q<<" "<<&a<<endl;
//输出结果为a的值
cout<<*r<<" "<<*p<<" "<<q<<" "<<a<<endl;
//指针自身地址
cout<<&r<<" "<<&p<<endl;
//p1的地址为0
cout<<p1<<endl;
//报错!找寻地址为0的变量失败,程序崩溃
//cout<<*p1<<endl;
return 0;
}