“for循环语句中,测试表达式的值将会被强制转化为bool类型”
“for不是函数,是C++中的一个关键字”
“C++将赋值表达式的值定义为左侧成员的值,
(例如’x=20‘的值是20)”
“<<操作符的优先级比表达式中的操作符高,因此要用括号获取正确的运算顺序
cout<<(x>3)<<endl;
结果为:x>3”
while(guests++ < 10)
printf("%d\n",guests);
"'guests++ < 10'是一个完整的表达式,因此该式的末尾是一个顺序点,所以在guests递增之后,才进入printf语句“
y = (4 + x++)+(6 + x++);
"'4 + x++'不是一个完整的表达式,所以 C++不保证在计算子表达式'4 + x++'之后,x立刻增加1”
“a++ 和++a单独成句时 这样定义前缀:将值加1,然后返回结果;但后缀版本首先复制一个拷贝,将其值加1,然后将复制的拷贝返回。
因此,对于类而言,前缀版本比后缀版本效率要高”
“前缀递增 前缀递减 和 解除引用操作符的优先级相同,以从右往左的顺序结合。
后缀操作的优先级较高”
“在for外部定义了一个变量a,内部又定义了一个变量a,在内部使用新定义的(旧a会被隐藏),在外部使用旧定义的”
“逗号语句取最后一个表达式的值为值,但是对于数字
cata = 17,40;
由于逗号的优先级很低,所以17赋值给cata,40不起作用
cata = (17,40);
此时,cata=40;”
“读取char值时,cin会忽略空格和换行符,可以用cin.get(ch)解决”