关系运算符
关系运算符的优先级比算术运算符的优先级低,比赋值运算符的优先级高。
举例:
x > y+2;
x > (y+2);
两者的效果一样,结果相同。
举例:
result = x > y;
result = (x > y);
先执行x > y,再将其结果赋值给result,与第二句的效果一样,结果相同。
关系运算符的优先级:
高优先级: <、 <=、>、>=
低优先级: ==、!=
关系运算符的结合律都是从左往右的。
举例:
a != b == c;
(a != b )== c;
两者的效果一样,结果相同。但是,在实际编程中,不建议这样写。
举例:
n = 0;
while(n++ <100)
{}
while循环中的内容会执行100次
n = 0;
while(++n <100)
{}
while循环中的内容会执行99次
总结:每个关系运算符都把它左侧的值和右侧的值进行比较。
大于 >
用于测试大于关系
大于等于 >=
用于测试大于等于关系
小于 <
用于测试小于关系
小于等于 <=
用于测试小于等于关系
等于 ==
用于测试相等
这是这几个运算符中需要特别注意的一个,它与我们数学学习中的习惯一个等号表示等于不同,用两个等号表示等于。
不等于 !=
用于测试不相等
关系操作符的产生的结果是整型值,不是布尔值!所以它可以赋值给整型变量。
表达式的结果为0,被认为是假,表达式的结果任何非0值,被认为是真。
举例:
if(expression != 0)
if(expression)
if(expression == 0)
if(!expression )
因为C是用整数来表示布尔类型,所以也可以使用简写。