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
");
 8     }
 9     else
10     {
11         printf("a不等于0
");
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
");
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
");
 7    }
 8     else
 9     {
10         printf("B
");
11     }
12     return 0;
13 }

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

人生之路,不忘初心,勿忘始终!
原文地址:https://www.cnblogs.com/xdl745464047/p/4003289.html