flag与零值比较:

(1)bool flag

if(flag)  if(!flag)

(2)int flag

if(flag == 0)  if(flag != 0)

(3)浮点型

if((flag >= -EPSINON) && (flag <= EPSINON))  if((flag < -EPSINON) || (flag > EPSINON))

EPSINON:精度 0.1 0.001 0.000001均可

(4)指针

if(flag == NULL)  if(flag != NULL)

 

 

循环语句的效率:

(1)在多重循环中,如果有可能,应当将最长的循环放在最内层,最短的放在最外层,以减少CPU跨切循环层的次数。

(2)如果循环体内存在逻辑判断,并且循环次数较大,宜将逻辑判断移到循环体的外面。

如果逻辑判断在循环体内执行,一会多了N-1次判断,二会打断循环的“流水线”作业,使得编译器不能对循环进行优化处理,降低效率。

如果循环次数小,宜将讲逻辑判断放在循环体的里面,使程序更加简洁。

 

不可在循环体内修改循环变量,防止for循环失去控制。

posted on 2013-03-10 16:21  guoxiang  阅读(169)  评论(0编辑  收藏  举报