int i=1024,*p=&i,&r=i;
在同一条定义语句中,虽然基本数据类型只有一个,但是声明符的形式却可以不同。
int*p中int是基本数据类型,*是类型修饰符(解引用符),类型修饰符是声明符的一部分,p是变量标识符。
int i=42;
int *p;
int *&r=p;
r=&i;
*r=0;
小技巧:要理解r的类型到底是什么,最简单的方法就是从右向左阅读r的定义。离变量名最近的符号(此例中是&r的符号&)对变量的类型有最直接的影响,因此r是一个引用。声明符的其余部分用以确定r引用的类型是什么,此例中的符号*说明r引用的是一个指针。最后,声明的基本数据类型部分指出r引用的是一个int型指针。