1. =
(1)是什么?
= 是赋值操作符,是将某一值赋给某一数据类型变量名。
如: int a = 10; 意思是将10 赋给 数据类型为int ,变量名为a 的变量
(2)特点:
运算方向(结合性):右结合性,即操作方向为 从右向左。
(3)定义的延伸:
复合的赋值运算符: 在赋值符 = 之前加上其他运算符,可以构成复合的运算符。
如a = a + 3 等价与 a + = 3
x = x*(y + 8 ) 等价与 x * = y + 8
a + =3 和x * = y + 8 就是复合的赋值运算符
2.==
(1)是什么?
== 是关系操作符,用来判断相等的。相等返回 true(真),否则放回false(假)
如: if(a == 10 ) 意思是判断a是否 等于10,如果等于,if执行,如果不等于,if不执行。
(2)扩展: !=
!= 也是关系操作符,是用来判断不相等的。
如:if(a != 10 ) 意思是判断a是否 不等于10,如果不等于,if执行,如果等于,if不执行。
(3)写法建议: 变换 变量名 和 常量 的位置
为什么?
(i)因为在编程中,容易将 == 少写成=,而且不会报错,很难发现错误。
如将 if ( a == 10) 少写成 if ( a = 10) ,而这样不会报错,不容易发现错误。
改进:
(i)将 if ( a == 10) 改成 if ( 10 == a), 两者效果相同,
如果少写成 if ( 10 = a) ,因为 =的右结合性,也会报错的,很容易发现问题。
3.两者在使用中的区别,以if语句为例
(1)举例前的扩展:
在c语言中,0表示假的,非0表示真的。
(2) if ( a = 0)
将0赋给a。 而0表示假的,则 判断条件为假,则if表达语句一定不执行(若有else表达语句,执行)。
(3)if ( a == 0)
if( a == 0) 判断a是否等于0,a等于0的话if语句执行,否则不执行。