C++ Primer Plus读书笔记(五)循环和关系表达式

1、前缀运算符的优先级是从右到左,例如:

1 *++p; //这句话的含义是先对p进行++,再取*

2、循环

  c++11新增了一种循环方式,有点和python类似,如下:

1 array<int, 5> a1 = {...};
2 
3 for(int x : a1)
4     cout << x << endl;

  如果要修改的话,需要遍历他的指针,这应该也好理解,如下:

1 array<int, 5> a1 = {...};
2 
3 for(int &x : a1)
4     x += x;

3、关于cin的一些东西

 1 char ch;
 2 char name[length] = {};
 3 
 4 cin >> ch;     //不会携带空格、制表符之类的字符
 5 cin.get(ch);    //会将所有输入字符均显示出来
 6 
 7 cin.get(name, length).get();
 8 
 9 //上边这句话等价于下边两行
10 
11 cin.get(name, length);
12 cin.get();

4、文件末尾的判断

1 1 if(cin.fail() == false)
2 2     cout << "xxx" << endl;
3 3 
4 4 //精简之后
5 5 
6 6 if(cin.get(ch))    //the result of input is true
7 7 {
8 8      do something;         
9 9 }

猜你喜欢

转载自www.cnblogs.com/gaoshaonian/p/12392477.html