1.运算符的优先级
注意:
(1)强制类型转换和sizeof是单目运算符。
(2)移位运算符的优先级低于双目运算符。
(3)>>之后是>之后是&之后是&&。
2.规则
(1)如果代码行中的运算符比较多,用括号确定表达式的操作顺序,避免使用默认的优先级。
(2)将整型变量用“==”或“!=”直接与0 比较。
if (value) // 会让人误解 value 是布尔变量
(3)return (condition ? x : y);
(4)在多重循环中,如果有可能,应当将最长的循环放在最内层,最短的循环放在最外层,以减少CPU 跨切循环层的次数。
(5)不可在for 循环体内修改循环变量,防止for 循环失去控制。
(6)建议for 语句的循环控制变量的取值采用“半开半闭区间”写法。半开半闭区间“0 =< x < N”,起点到终点的间隔为N,循环次数为N。
(7)少用,慎用goto语句。