关系运算符和逻辑运算符分别是什么(什么是关系运算符和逻辑运算符)
导语:物联网学习教程—关系运算符和逻辑运算符
关系运算符和逻辑运算符
说明:
(1) 当关系运算符两边的值满足关系时为真, 返回1; 如不满足关系时为假,返回0。例如:
x=10;
printf(″%d\n″, x>=9);
则输出为1。又如:
x=5;
printf(″%d\n″, x>=9);
则输出为0。
字符比较按其ASCII码值进行, 如′A′<′B′为真。
(2) 关系运算符>, >=, <, <=的优先级相同, 如在表达式中同时出现时, 则自左向右顺序运算。而==与! =则优先级低于此四种关系运算符。例如:
printf(″%d\n″, 5>3>1);
运行输出结果为0。因为两个>是同一优先级,5>3的结果为1, 而1>1的关系不满足,所以最后结果为0。
又如: printf(″%d\n″, 1==11<35);
运行输出结果为1。因为<的优先级比==高,则11<35的结果为1,而1==1的关系满足,所以最后结果为1
(4) 关系和逻辑运算符的优先级都低于算术运算符(逻辑非!除外)。 如10>1+12完全等价于10>(1+12), 其结果当然是假(即0)。
(5) 在关系和逻辑运算符组成的表达式中, 也可以像算术表达式一样, 用圆括号来改变运算的自然优先次序,如! 1&&0其值为假,因为先执行! 1, 然后才执行&&。然而加上圆括号! (1&&0)后改变了运算顺序,则执行! 0操作结果为1,即其值为真。
(6) 在逻辑表达式的求解中,并不是所有的逻辑运算符都被执行,只是在必须执行下一个逻辑运算符才能求出表达式的值时,才执行该运算符。例如: 当两个逻辑量a||b时,当a为真时则不再求b的值, 而取值为真(即1)。 当两个逻辑量a&&b时,当a为假,则同样不再求b的值, 而取值为假(即0)。 同理, a||b||c式中当a为真时, 直接取值为真(即1);a&&b&&c式中当a为假时,直接取值为假(即0)。此时若b, c为赋值表达式,则赋值操作就没有进行。
(7) 逻辑运算的转换。
!(a||b)可写成!a&&!b,而! (a&&b)可写成! a||! b
免责声明:本站部份内容由优秀作者和原创用户编辑投稿,本站仅提供存储服务,不拥有所有权,不承担法律责任。若涉嫌侵权/违法的,请与我联系,一经查实立刻删除内容。本文内容由快快网络小莉创作整理编辑!