1 运算符的优先级
rule1:如果代码行中的运算符比较多,用括号确定表达式的操作顺序,避免使用默认的优先级;
2 复合表达式
rule1:不要编写太复杂的复合表达式;
rule2:不要有多用途的复合表达式;
rule3:不要将程序中的复合表达式与“真正的数学表达式”混淆;
3 if语句
rule1:不可将布尔变量直接与TRUE、FALS或者1、0进行比较;(假设布尔变量名字为flag,if(flag)以及if(!flag);
rule2:应当将整型变量用“==”或“!=”直接与0比较;
rule3:浮点变量与零值比较时,应设法转化为“>=”或“<=”形式;
rule4:指针变量与零值比较时,应用“==”或“!=”与NULL比较;
4 for语句的循环变量控制
rule1:不可在for循环体内修改循环变量,防止for循环失去控制;
rule2:建议for语句的循环控制变量的取值采用“半开半闭区间”写法。
5 switch语句
rule1:每个case语句的结尾不要忘了加break,否则将导致多个分支重叠(除非有意使多个分支重叠);
rule2:不要忘记最后那个default分支。即使程序真的不需要default处理,也应该保留语句 default : break; 这样做并非多此一举,而是为了防止别人误以为你忘了default处理;