C语言-关系运算符和逻辑运算符
2024-01-09 21:23:50
1. 关系运算符
在 C 语言中,使用关系运算符来比较两个数的大小关系。
?
关系运算符都是双目运算符,其结合性均为左到右。另外,关系运算符的优先级低于算术运算符,高于赋值运算符。
2. 关系表达式
用关系运算符将两边的变量、数据或表达式连接起来,称之为关系表达式:
?
- 1 < 2
- a > b
- a <= 1 + b
- 'a' + 'b' <= 'c'
- (a = 3) > (b = 5)
关系表达式得到的值是一个逻辑值,即判断结果为“真”或“假”,如果结果为“真”,关系表达式的值为 1,如果为“假”,关系表达式的值则为 0。
3. 逻辑运算符
C 语言总共提供了三种逻辑运算符:
?
4. 逻辑表达式
用逻辑运算符将两边的变量、数据或表达式连接起来,称之为逻辑表达式:
?
- 3 > 1 && 1 < 2
- 3 + 1 || 2 == 0
- !(a + b)
- !0 + 1 < 1 || !(3 + 4)
- 'a' - 'b' && 'c'
注:关系表达式和逻辑表达式得到的值都是一个逻辑值,也就是表示真的 1 和表示假的 0。但是用于判断一个值是否为真时,以 0 表示假,以任何非 0 的数表示真。一个是编译系统告诉我们的结果,一个是我们让编译系统去判断的,两者方向不同。
5. 短路求值
短路求值又称最小化求值,是一种逻辑运算符的求值策略。只有当第一个运算数的值无法确定逻辑运算的结果时,才对第二个运算数进行求值。
C 语言对于逻辑与和逻辑或采用短路求值的方式。
?
-
#include <stdio.h> int main() { ? ?? ???int a = 3, b = 3; ? ?? ???(a = 0) && (b = 5); ? ?? ???printf("a = %d, b = %d\n", a, b); ? ?? ???(a = 1) || (b = 5); ? ?? ???printf("a = %d, b = %d\n", a, b); ? ?? ???return 0; }
复制代码
文章来源:https://blog.csdn.net/bm2023_/article/details/135447833
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!