c语言里的或
‘壹’ c语言中的 与或非运算
C语言中的与、或、非是C语言的逻辑运算符。
1、逻辑与
在C语言中逻辑与用&&表示。
举例:a&&b(其中a、b都代表一个条件)
如果a和b都为真,则结果为真,如果a和b中有一个条件为假,则结果为假。
2、逻辑或
在C语言中逻辑或用||表示。
举例:a||b(其中a、b都代表一个条件)
如果a和b有一个或以上为真,则结果为真,二者都为假时,结果为假。
3、逻辑非
在C语言中逻辑非用!表示。
举例:!a(a代表一个条件)
如果a为假,则!a为真,如果a为真,则!a为假。
(1)c语言里的或扩展阅读
在C 语言中的逻辑运算符及优先级:
一元:!(逻辑非)。
二元:&&(逻辑与)、||(逻辑或)。
以上三种逻辑运算符中,逻辑非 ! 的优先级最高,逻辑与 && 次之,逻辑或 || 优先级最低。即算术、逻辑、赋值运算符的优先级顺序为:
逻辑非 ! >算术 > 逻辑与 &&、逻辑或 || > 赋值=
‘贰’ c语言中&&和||还有&分别是什么意思
C语言中&&表示与,意为同时都要满足。&&逻辑运算符,并且是双目运算符。C语言是一门面向过程的。抽象化的通用程序设计语言,广泛应用于底层开发。
C语言是一门面向过程的计算机编程语言,与C++、Java等面向对象编程语言有所不同。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、仅产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
2019年7月,中国互联网络信息中心发布的《2018年全国未成年人互联网使用情况研究报告》显示,我国未成年网民规模为1.69亿,其中把玩游戏作为主要休闲娱乐类活动的达64.2%。
2019年,中消协对50款游戏进行体验发现,只有41款游戏启用了实名制。而且,有的实名制验证方式形同虚设,例如只有17款游戏在登录时强制用户实名,不少游戏不强制用户验证或者只在产生消费时才实名验证。
‘叁’ C语言中"或者"是怎么表示的
“||”
其它常用运算符:
1、移位运算符
<< 左移运算符;>> 右移运算符。
2、关系运算符
<、<=、>、>=关系运算符。
3、相等运算符
“ == ”等于运算符;“ != ”不等于运算符。
4、位与运算符
“ & ”按位与运算符
5、位异或运算符
“ ∧ ”按位异或运算符(Bitwise exclusive OR operator)。
6、逻辑与运算符
“&&”逻辑与运算符。
(3)c语言里的或扩展阅读
运算符的特性——
1、优先级:
C语言中,运算符的运算优先级共分为15 级。1 级最高,15 级最低。 在表达式中,优先级较高的先于优先级较低的进行运算。而在一个运算量两侧的运算符 优先级相同时,则按运算符的结合性所规定的结合方向处理。
2、结合性:
C语言中各运算符的结合性分为两种,即左结合性(自左至右)和右结合性(自右至左)。例如算术运算符的结合性是自左至右,即先左后右。如有表达式x-y+z 则y 应先与“-”号结合,执行x-y 运算,然后再执行+z 的运算。
‘肆’ C语言里的“或者”是什么符号
|| 双竖 比如 (a == 3) || (a == 4 ), 表示假如 a值为3 ,或者a 值为4 的一个判断
‘伍’ C语言中 & 和 && 的区别
区别:
1.运算符性质不同。
&是一个位运算符。
&&是一个逻辑运算符。
2.作用不同。
&是将两个二进制的数逐位相与,结果是相与之后的结果。
&&就是判断两个表达式的真假性,只有两个表达式同时为真才为真,有一个为假则为假,具有短路性质。
3.用途限制。
&除了是一个位运算符,也是取地址符。
&&就是一个单纯的逻辑运算符,没有任何其他含义。
参考资料
&-网络
&&-网络
‘陆’ C语言中逻辑或的表示方法
在c语言中,没有专用的布尔型变量。
只要逻辑表达式的值非0,就被认为是“真”;相反,0
则为假。
在c语言中,常以
1
表示
真(也可用别的非0值表示)。但“真”不一定是
1
,它可以是
2
、
-7
等
非0
的数值)
‘柒’ c语言中按位或|
这里涉及到的是位操作。
首先你需要了解内存中的数字存储形式(二进制)。这里的a是一个标识符,用于存储标记。具体而言,a是一个八个比特长的变量。比如0b00000000,0b00001110等等。用十六进制可以简写为0x00, 0x0E等等(这里两个例子没有任何含义)
在C语言中“<<”表示移位操作,比如0b00000001左移3位,就会变成0b00001000;左移2位就是0b00000100;等等。
然后你这里没有给出digitalRead()函数的返回类型,我认为是0或1。在这种情况下,0写成8位二进制是0b00000000,左移任何位都是0,如果是1的话,左移x位表示把从右往左数第x+1位变成1,比如:1<<3表示0b00001000,从右至左第4位变成1。
接下来,你有4个digitalRead函数,但是你想同时关心4个返回值。怎么办呢?我把第x个返回值放在从右往左数第x位上。比如0b00000110,表示第二、三个返回值是1,剩下两个返回值是0。那么你按上面的移位操作,可以得到这样4个数:
0b 0000 0000 (返回值是0)
0b 0000 0100 (返回值是1)
0b 0000 0010 (返回值是1)
0b 0000 0000 (返回值是0)
按位进行“或”操作。“或”操作你肯定明白,有1就是1,没1才是0
所以根据结果可以知道4个返回值是怎么样的。于是在switch语句中的返回值表明,如果是0x00(表示4个返回值是0),或是0x0F(4个返回值都是1)(F是4个1),则进行某种操作。
不知道明白了没?
‘捌’ C语言中 &和^是怎么回事
& 是 按位与,两个都是 1 的时候结果为1,否则结果为0
^ 按位异或—— 若参加运算的两个二进制位值相同则为0,否则为1;
‘玖’ 关于C语言中 || 和 &&的用法
“||”“&&”表示逻辑运算,“||”表示或者的意思,“&&”表示并且的意思。
&&运算符需要两个表达式作为操作数,并创建一个表达式,只有当两个子表达式都为true时,该表达式才为true。
||运算符需要两个表达式作为操作数,并创建一个表达式,当任何一个子表达式为true时,该表达式为true。只要其中一个子表达式为true,则整体表达式为true,此时另外一个子表达式无论是false还是true都无关紧要。
运算符的优先级
优先级与求值顺序无关。如a+b && b*c,虽然*优先级最高,但这个表达式求值顺序是从左到右。
优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。相同优先级中,按结合性进行结合。大多数运算符结合性是从左到右,只有三个优先级是从右至左结合的,它们是单目运算符、条件运算符、赋值运算符。
基本的优先级需要记住:
指针最优,单目运算优于双目运算,如正负号。先算术运算,后移位运算,最后位运算。请特别注意:逻辑运算最后结合。