05-if使用注意

 

1、if条件表达式比较大小的时候,常量值放左边,变量放右边

 

 1 #include <stdio.h>
 2 int main(int argc, const char * argv[])
 3 {
 4     int a = 2;
 5     if(0 == a)
 6     {
 7         printf("a等于0\n");
 8     }
 9     else
10     {
11         printf("a不等于0\n");
12     }
13     return 0;
14 }

 

这种写法的好处:

1> 如果是if(a == 0),当我们不小心把==输成=的时候,编译器不会报错,小括号内会进行赋值操作,把0赋值给a,再做判断,0为假,所以就会去执行esle语句。这样的话,整个if语句结构都失效了。

2>如果是if(0 == a),当我们不小心把==输成=的时候,编译器会立即报错,因为不能把变量赋值给常量。

2、如果if()后有分号,编译器会默认有一条空语句。

1 #include <stdio.h>
2 int main(int argc, const char * argv[])
3 {
4     if(5 > 6);
5    {
6        printf("abc\n");
7    }
8 }

输出结果为:abc

3、if语句的小括号中为可以为常量:非零数表示永真,零表示假

 1 #include <stdio.h>
 2 int main(int argc, const char * argv[])
 3 {
 4     if(1)
 5    {
 6        printf("A\n");
 7    }
 8     else
 9     {
10         printf("B\n");
11     }
12     return 0;
13 }

括号内是1,表示永真,所以输出结果为: A 。

 

posted @ 2014-10-01 15:16  微雨独行  阅读(260)  评论(0编辑  收藏  举报
1 2