C语言 逻辑运算符及其优先次序(一)
【摘要】 逻辑运算符及其优先次序(一)分为两篇C语言三中逻辑运算符双目运算符:&& 与运算 (与就是和,两者里一个为假则都为假)‖ 或运算( 或就是两者之中选一个,在这里就是若有一个不为0则结果还是真的) 单目运算符:! 非运算 非0的数表示真,为0的数表示假eg1. &&与运算: int i; i=7 && 4; i=1;( *3...
逻辑运算符及其优先次序(一)
分为两篇
C语言三中逻辑运算符
双目运算符:
&& 与运算 (与就是和,两者里一个为假则都为假)
‖ 或运算( 或就是两者之中选一个,在这里就是若有一个不为0则结果还是真的) 单目运算符:
! 非运算 非0的数表示真,为0的数表示假
eg1. &&与运算:
int i;
i=7 && 4;
i=1;( *3和5都不为0,都表示为真* )
int i;
i=1 && 0;
i=0;( *有一个0,都表示为假* )
eg2. 或运算:
int i;
i= 4‖0;
i=1;(*一真一假,在或运算里,结果为真,所以还是i=1*)
int i;
i=0‖0;
i=0;(*两个都是假的,则结果就是假的,则为0)
如果学会了,再来复杂一点的
int i,a=7,b=3;
i=(a<b)&&a ;
i=?
自己可以先算结果是什么再看答案
答案是 i= 0
解析,a<b是假的,则结果为0, 所以式子为
i= 0 && 7;
&&为和运算,两者若有一个为假,则结果为假!
我们再来把&& 改为‖,
那么结果 i=1
单目运算
真的非就是假的,假的非就是真的
举个例子:
int i;
i==9; //9是真的//
!i; (* !表示非,就是相反的意思,则1若i为真,则 !i为假,若i为假,则!i为真*)
i==0;
运算符优先符的关系
!非运算 高于 && 与运算 高于‖ 或运算
! 非运算高于算数运算符(=),其他两个低于运算符
. (*如果还想知道更多的可以看之前发的 运算符的高低 文章*)
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)