对于cin和cout
cin>>a>>b;
上述语句中cin返回其左侧的运算对象,其等价于
(cin>>a)>>b;
对于经典处理未知数量数据:
while(cin>>a)
while检测流的状态。遇到文件结束符或者无效输入,则退出循环
引用无法更改其引用对象,引用本身不是对象。
*p=0//p所指向的对象赋值为0
p=0;//p为空指针
int i=0;
int *ip=i;//不合法,i为int变量
要理解一个对象到底是什么?最简单的办法就是从右向左阅读其定义。
int *&r=p//离r最近为&说明其事一个引用,在之后是*,表明其是对一个指针的引用
const int *p;
//离p最近的为*,表示其为指针;在之后是int,表示其为整型指针,最后为const,表示其为指向常量的指针,无法通过其改变其指向对象的值。
int *const p;
//离p最近的为const,表示其为常量;在之后是*,表示其为常量指针,最后为int,表示其为指向整型地址常量指针,无法改变其指向地址。
const默认只能在单个文件内使用
const int N=1e9;//本文件内使用
extern const int BUFF=512;//可在多个文件内共享使用。
const int 可以引用int,但int不能引用const int。